Ctrl K
ComunidadGuías…

dev-docker-compose.yml

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
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: