31 lines
1.0 KiB
YAML
31 lines
1.0 KiB
YAML
version: '3.3'
|
|
|
|
services:
|
|
# Das Backend mit der Flask-App
|
|
flask_app:
|
|
build: .
|
|
container_name: raceplanner_backend
|
|
image: raceplaner:latest
|
|
restart: always
|
|
volumes:
|
|
- ./app:/app
|
|
- ./data:/app/data
|
|
environment:
|
|
- SECRET_KEY=renn-strategie-2026-sicher
|
|
- DATABASE_URL=sqlite:////app/data/raceplanner.db
|
|
- PYTHONUNBUFFERED=1
|
|
|
|
# Der Nginx-Proxy für den externen Zugriff
|
|
nginx:
|
|
image: nginx:latest
|
|
container_name: raceplanner_proxy
|
|
restart: always
|
|
ports:
|
|
- "6060:443"
|
|
volumes:
|
|
- ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf:ro
|
|
- ./certs:/etc/nginx/certs
|
|
# Einzeiliger Befehl ohne Zeilenumbrüche für maximale Windows-Kompatibilität
|
|
command: /bin/bash -c "mkdir -p /etc/nginx/certs && if [ ! -f /etc/nginx/certs/fullchain.pem ]; then openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/nginx/certs/privkey.pem -out /etc/nginx/certs/fullchain.pem -subj '/CN=localhost'; fi && nginx -g 'daemon off;'"
|
|
depends_on:
|
|
- flask_app |