name: tripwb networks: tripwb: name: tripwb driver: bridge services: caddy: image: caddy:alpine container_name: tripwb-caddy-server depends_on: tripwb-backend-app: condition: service_healthy ports: - 80:80 - 443:443 volumes: - caddy-config:/config - caddy-data:/data - ./Caddyfile:/etc/caddy/Caddyfile:ro networks: - tripwb tripwb-frontend-app: build: context: frontend/ # image: tripwb-frontend container_name: tripwb-frontend-app environment: NEXT_PUBLIC_API_URL: ${NEXT_PUBLIC_API_URL} NEXTAUTH_URL: ${NEXTAUTH_URL} BACKEND_URL: ${BACKEND_URL} env_file: - .env depends_on: postgres: condition: service_healthy tripwb-backend-app: condition: service_healthy caddy: condition: service_started # ports: # - 9000:3000 networks: - tripwb tripwb-backend-app: build: context: backend/ # image:tripwb-backend container_name: tripwb-backend-app environment: SECRET_KEY: ${SECRET_KEY} DEBUG_MODE: ${DEBUG_MODE} API_KEY: ${API_KEY} DB_USER: ${DB_USER} DB_HOST: ${DB_HOST} DB_NAME: ${DB_NAME} DB_PASSWORD: ${DB_PASSWORD} DB_PORT: ${DB_PORT} healthcheck: test: ['CMD', 'curl', '-s', '-o', '-f', 'http://tripwb-backend-app:8000'] # interval: 5s timeout: 5s retries: 5 env_file: - .env depends_on: postgres: condition: service_healthy redis: condition: service_healthy volumes: - tripwb-backend-app-uploads:/root/tripwb/uploads # ports: # - 8000:8000 networks: - tripwb # pgadmin-app: # image: dpage/pgadmin4 # container_name: pgadmin-app # environment: # DB_PORT: ${DB_PORT} # DB_HOST: ${DB_HOST} # DB_NAME: ${DB_NAME} # DB_PASSWORD: ${DB_PASSWORD} # DB_USER: ${DB_USER} # BOT_TOKEN: ${BOT_TOKEN} # CHAT_ID: ${BOT_TOKEN} # JWT_SECRET: ${BOT_TOKEN} # NEXT_PUBLIC_API_URL: ${NEXT_PUBLIC_API_URL} # PGADMIN_DEFAULT_EMAIL: timofey.syr17@gmail.com # PGADMIN_DEFAULT_PASSWORD: passWoRd # depends_on: # postgres: # condition: service_healthy # ports: # - 81:80 # networks: # - tripwb postgres: image: postgres:alpine restart: always container_name: tripwb-db env_file: backend/.env environment: POSTGRES_USER: ${DB_USER} POSTGRES_DB: ${DB_NAME} POSTGRES_PASSWORD: ${DB_PASSWORD} healthcheck: test: [CMD-SHELL, "sh -c 'pg_isready -U ${DB_USER} -d ${DB_NAME}'"] interval: 10s timeout: 5s retries: 5 # ports: # - 5432:5432 volumes: - pg-data:/var/lib/postgresql/data networks: - tripwb volumes: pg-data: caddy-config: caddy-data: tripwb-backend-app-uploads: