dawarich/.devcontainer/docker-compose.yml
2025-06-09 13:39:25 +02:00

83 lines
2.3 KiB
YAML

networks:
dawarich:
services:
dawarich_dev:
build:
context: .
dockerfile: Dockerfile
container_name: dawarich_dev
volumes:
- dawarich_public:/var/app/public
- dawarich_watched:/var/app/tmp/imports/watched
- dawarich_storage:/var/app/storage
- dawarich_sqlite_data:/dawarich_sqlite_data
networks:
- dawarich
ports:
- 3000:3000
- 9394:9394
stdin_open: true
tty: true
environment:
RAILS_ENV: development
REDIS_URL: redis://dawarich_redis:6379/0
DATABASE_HOST: dawarich_db
DATABASE_USERNAME: postgres
DATABASE_PASSWORD: password
DATABASE_NAME: dawarich_development
# PostgreSQL database name for solid_queue
QUEUE_DATABASE_HOST: dawarich_db
QUEUE_DATABASE_USERNAME: postgres
QUEUE_DATABASE_PASSWORD: password
QUEUE_DATABASE_PORT: 5432
QUEUE_DATABASE_NAME: dawarich_development_queue
# SQLite database paths for cache and cable databases
CACHE_DATABASE_PATH: /dawarich_sqlite_data/dawarich_development_cache.sqlite3
CABLE_DATABASE_PATH: /dawarich_sqlite_data/dawarich_development_cable.sqlite3
MIN_MINUTES_SPENT_IN_CITY: 60
APPLICATION_HOSTS: localhost
TIME_ZONE: Europe/London
APPLICATION_PROTOCOL: http
PROMETHEUS_EXPORTER_ENABLED: false
PROMETHEUS_EXPORTER_HOST: 0.0.0.0
PROMETHEUS_EXPORTER_PORT: 9394
dawarich_redis:
image: redis:7.4-alpine
container_name: dawarich_redis
command: redis-server
networks:
- dawarich
volumes:
- dawarich_shared:/data
restart: always
healthcheck:
test: [ "CMD", "redis-cli", "--raw", "incr", "ping" ]
interval: 10s
retries: 5
start_period: 30s
timeout: 10s
dawarich_db:
image: postgis/postgis:17-3.5-alpine
container_name: dawarich_db
volumes:
- dawarich_db_data:/var/lib/postgresql/data
- dawarich_shared:/var/shared
networks:
- dawarich
restart: always
healthcheck:
test: [ "CMD-SHELL", "pg_isready -U postgres -d dawarich_development" ]
interval: 10s
retries: 5
start_period: 30s
timeout: 10s
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: password
volumes:
dawarich_db_data:
dawarich_shared:
dawarich_public:
dawarich_watched:
dawarich_storage:
dawarich_sqlite_data: