Files
ip-geo-api/docker-compose.yml
Mateusz Gruszczyński 95917a9178 logowanie dla health
2025-10-06 08:57:16 +02:00

55 lines
1.1 KiB
YAML

services:
api:
build: .
container_name: ip-geo-api
restart: unless-stopped
ports:
- "${PORT:-8080}:8000"
healthcheck:
test:
[
"CMD",
"python",
"-c",
"import urllib.request; import sys; req = urllib.request.Request('http://localhost:8000/health'); sys.exit(0) if urllib.request.urlopen(req).read() == b'OK' else sys.exit(1)",
]
interval: 30s
timeout: 10s
retries: 3
start_period: 10s
command:
[
"uvicorn",
"app.main:app",
"--host",
"0.0.0.0",
"--port",
"8000",
"--log-config",
"logging.yml",
]
volumes:
- ./data:/data
env_file:
- .env
networks:
- ip-geo-api_network
depends_on:
- updater
updater:
build: .
container_name: ip-geo-updater
restart: unless-stopped
volumes:
- ./data:/data
command: ["python", "-m", "scripts.updater"]
environment:
- PYTHONPATH=/app
env_file:
- .env
networks:
ip-geo-api_network:
driver: bridge