services: # caddy: # image: caddy:alpine # ports: # - "8081:80" # volumes: # - ./public:/srv # - ./Caddyfile:/etc/caddy/Caddyfile postgres: container_name: our-postgres image: postgres:17 restart: unless-stopped environment: POSTGRES_USER: ${DB_USER} POSTGRES_PASSWORD: ${DB_PASSWORD} POSTGRES_DB: ${DB_NAME} ports: - "5432:5432" volumes: - pgdata:/var/lib/postgresql/data healthcheck: test: ["CMD", "pg_isready", "-U", "postgres"] interval: 10s retries: 5 start_period: 10s timeout: 10s pgadmin: image: dpage/pgadmin4:latest environment: PGADMIN_LISTEN_PORT: 5050 PGADMIN_DEFAULT_EMAIL: ${PGADMIN_DEFAULT_EMAIL} PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_DEFAULT_PASSWORD} PGADMIN_DISABLE_POSTFIX: true ports: - "5050:5050" our: build: context: . dockerfile: Dockerfile container_name: our-app ports: - "5000:5000" env_file: .env.production ## @see ./src/config/env.ts for all env var names. depends_on: - postgres volumes: pgdata: