services: nginx: container_name: phase-nginx-dev build: context: . dockerfile: ./nginx/Dockerfile restart: always ports: - 80:80 - 443:443 volumes: - ./nginx/default.conf:/etc/nginx/conf.d/default.conf:ro depends_on: - frontend - backend networks: - phase-net-dev frontend: container_name: phase-frontend-dev restart: unless-stopped depends_on: - backend build: context: ./frontend dockerfile: Dockerfile.dev volumes: - ./frontend/:/app/ - /app/node_modules env_file: .env.dev networks: - phase-net-dev backend: container_name: phase-backend-dev restart: unless-stopped depends_on: postgres: condition: service_healthy redis: condition: service_started build: context: ./backend dockerfile: Dockerfile.dev volumes: - ./backend/:/app/ env_file: .env.dev networks: - phase-net-dev rqworker: container_name: phase-rqworker-dev restart: unless-stopped depends_on: - backend - redis build: context: ./backend dockerfile: Dockerfile.dev command: python manage.py rqworker default volumes: - ./backend/:/app/ env_file: .env.dev networks: - phase-net-dev pgweb: container_name: phase-pgweb-dev image: sosedoff/pgweb restart: unless-stopped ports: - "8081:8081" env_file: - .env.dev depends_on: postgres: condition: service_healthy networks: - phase-net-dev postgres: container_name: phase-postgres image: postgres:15.4-alpine3.17 restart: always env_file: - .env.dev environment: POSTGRES_DB: ${DATABASE_NAME} POSTGRES_USER: ${DATABASE_USER} POSTGRES_PASSWORD: ${DATABASE_PASSWORD} volumes: - phase-postgres-data-dev:/var/lib/postgresql/data networks: - phase-net-dev healthcheck: test: ["CMD-SHELL", "pg_isready -U ${DATABASE_USER} -d ${DATABASE_NAME}"] interval: 5s timeout: 5s retries: 5 redis: container_name: phase-redis-dev image: redis:alpine3.19 restart: always ports: - "6379:6379" networks: - phase-net-dev volumes: phase-postgres-data-dev: driver: local networks: phase-net-dev: