services: postgresql: image: postgres:17 env_file: - .env restart: unless-stopped environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: ${POSTGRESQL_PASSWORD} volumes: - pgdata:/var/lib/postgresql/data odtserver: build: context: . dockerfile: Dockerfile restart: unless-stopped depends_on: - postgresql ports: - "8000:8000" volumes: - ./keys:/src/keys command: ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"] healthcheck: test: ["CMD-SHELL", "python -c \"import urllib.request; urllib.request.urlopen('http://127.0.0.1:8000/', timeout=2)\""] interval: 30s timeout: 5s retries: 3 start_period: 10s volumes: pgdata: