services: nginx: image: nginx:latest ports: - '80:80' - '443:443' volumes: - ./nginx.conf:/etc/nginx/nginx.conf - ./CertSSL:/etc/nginx/ssl depends_on: - server - chart server: build: context: ./ dockerfile: Dockerfile-server restart: unless-stopped ports: - '3000:3000' volumes: - './CertSSL:/CertSSL' - './config.yaml:/config.yaml' depends_on: - postgres chart: build: context: ./chart restart: unless-stopped ports: - '3030:3030' volumes: - './CertSSL:/CertSSL' - './config.yaml:/config.yaml' depends_on: postgres: condition: service_healthy collect-currency: build: context: ./ dockerfile: Dockerfile-collect-currency restart: unless-stopped volumes: - './config.yaml:/config.yaml' depends_on: - postgres postgres: image: postgres:latest restart: unless-stopped env_file: .env ports: - '5432:5432' volumes: - ./postgres-data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U $POSTGRES_USER"] interval: 10s timeout: 5s retries: 5 volumes: server: driver: local chart: driver: local collect-currency: driver: local postgres: driver: local