services: api1: container_name: panettone_api1 image: fastapi-sqlalchemy-asyncpg-api1.slim:latest environment: - PYTHONPATH=/panettone env_file: - .env - .secrets command: bash -c " uvicorn app.main:app --host 0.0.0.0 --port 8080 --lifespan=on --use-colors --loop uvloop --http httptools --reload " volumes: - ./app:/panettone/app - ./tests:/panettone/tests - ./templates:/panettone/templates - ./alembic:/panettone/alembic ports: - "8080:8080" # depends_on: # postgres: # condition: service_healthy # redis: # condition: service_started # # postgres: # container_name: panettone_postgres # build: # context: ./db # dockerfile: Dockerfile # volumes: # - panettone_postgres_data:/var/lib/postgresql/data # env_file: # - .env # ports: # - 5432:5432 # environment: # - POSTGRES_PASSWORD=${POSTGRES_PASSWORD?Variable not set} # - POSTGRES_USER=${POSTGRES_USER?Variable not set} # - POSTGRES_DB=${POSTGRES_DB?Variable not set} # healthcheck: # test: # [ # "CMD-SHELL", "pg_isready -d $POSTGRES_DB -U $POSTGRES_USER" # ] # interval: 5s # timeout: 5s # retries: 5 # # redis: # image: redis:latest # container_name: panettone_redis # ports: # - "6379:6379" # env_file: # - .env # entrypoint: redis-server --appendonly yes # # #volumes: # panettone_postgres_data: {}