69 lines
1.5 KiB
YAML
69 lines
1.5 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
linkedin-posts:
|
|
build: .
|
|
container_name: linkedin-posts
|
|
restart: unless-stopped
|
|
expose:
|
|
- "8001"
|
|
env_file:
|
|
- .env
|
|
environment:
|
|
- PYTHONPATH=/app
|
|
- PORT=8001
|
|
- VIRTUAL_HOST=linkedin.onyva.dev
|
|
- VIRTUAL_PORT=8001
|
|
- LETSENCRYPT_HOST=linkedin.onyva.dev
|
|
volumes:
|
|
- ./logs:/app/logs
|
|
healthcheck:
|
|
test: ["CMD", "python", "-c", "import httpx; r = httpx.get('http://127.0.0.1:8001/health', timeout=5); raise SystemExit(0 if r.status_code == 200 else 1)"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 10s
|
|
networks:
|
|
- proxy-network
|
|
|
|
nginx-proxy:
|
|
image: nginxproxy/nginx-proxy
|
|
container_name: nginx-proxy
|
|
restart: unless-stopped
|
|
ports:
|
|
- "80:80"
|
|
- "443:443"
|
|
environment:
|
|
- DEFAULT_HOST=linkedin.onyva.dev
|
|
volumes:
|
|
- /var/run/docker.sock:/tmp/docker.sock:ro
|
|
- certs:/etc/nginx/certs
|
|
- html:/usr/share/nginx/html
|
|
- vhost:/etc/nginx/vhost.d
|
|
networks:
|
|
- proxy-network
|
|
|
|
acme-companion:
|
|
image: nginxproxy/acme-companion
|
|
container_name: acme-companion
|
|
restart: unless-stopped
|
|
volumes_from:
|
|
- nginx-proxy
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
|
- acme:/etc/acme.sh
|
|
environment:
|
|
- DEFAULT_EMAIL=ruben.fischer@onyva.de
|
|
networks:
|
|
- proxy-network
|
|
|
|
networks:
|
|
proxy-network:
|
|
driver: bridge
|
|
|
|
volumes:
|
|
certs:
|
|
html:
|
|
vhost:
|
|
acme:
|