version: '3.8' services: frontend: build: frontend container_name: support-frontend ports: - "80:80" depends_on: - backend networks: - support-network backend: build: backend container_name: support-backend environment: - DATABASE_URL=postgresql://postgres:postgres123@postgres:5432/support_db - TEST_DATABASE_URL=postgresql://postgres:postgres123@postgres:5432/support_db_test ports: - "8000:8000" depends_on: postgres: condition: service_healthy networks: - support-network restart: unless-stopped postgres: image: postgres:15 container_name: support-postgres environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres123 POSTGRES_DB: support_db POSTGRES_MULTIPLE_DATABASES: support_db,support_db_test volumes: - postgres_data:/var/lib/postgresql/data - ./backend/scripts/create-multiple-postgresql-databases.sh:/docker-entrypoint-initdb.d/create-multiple-postgresql-databases.sh healthcheck: test: ["CMD-SHELL", "pg_isready -U postgres -d support_db"] interval: 5s timeout: 5s retries: 5 start_period: 5s networks: - support-network restart: unless-stopped networks: support-network: driver: bridge volumes: postgres_data: name: support_postgres_data