Files
CNN_Website/compose.yaml
T
marvinandClaude Sonnet 5 121d8a8ab4 Make upload limit and Caddy settings configurable via env vars
- API: read the upload size limit from MAX_UPLOAD_MEGABYTES (default 15)
  and keep MAX_UPLOAD_BYTES as the byte value used by /predict
- Caddy: read the ACME email and request body limit from CADDY_EMAIL and
  CADDY_MAX_BODY (default 16MB, ~1 MB above the API limit)
- compose: pass the new variables to caddy_proxy and cnn_api

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-24 19:01:42 +02:00

67 lines
1.3 KiB
YAML

services:
caddy_proxy:
build:
context: caddy/.
image: caddy_proxy
ports:
- "80:80"
- "443:443"
restart: unless-stopped
environment:
- CADDY_EMAIL=marvin.krausser277@gmail.com
# Keep about 1 MB above the API's MAX_UPLOAD_MEGABYTES (multipart overhead).
- CADDY_MAX_BODY=16MB
volumes:
- ./caddy/data:/data/caddy
- ./caddy/config:/config/caddy
depends_on:
- cnn_api
- cnn_website
networks:
- cnn_network
pull_policy: never
container_name: caddy_proxy
cnn_api:
build:
context: api/.
image: cnn_api
expose:
- "8000"
restart: unless-stopped
volumes:
- ./database:/app/database
networks:
- cnn_network
pull_policy: never
container_name: cnn_api
environment:
- PARALLEL_INFERENCES=4
- QUEUED_INFERENCES=4
- TORCH_THREADS=1
- FACE_MAX_FPS=5.5
- PREDICT_RATE_LIMIT=10
- PREDICT_RATE_WINDOW=60
- REVIEW_RATE_LIMIT=5
- REVIEW_RATE_WINDOW=60
- MAX_UPLOAD_MEGABYTES=15
cpus: "5"
mem_limit: 3g
cnn_website:
build:
context: website/.
image: cnn_website
expose:
- "8080"
restart: unless-stopped
networks:
- cnn_network
pull_policy: never
container_name: cnn_website
networks:
cnn_network:
name: cnn_network