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>
This commit is contained in:
@@ -45,7 +45,7 @@ QUEUED_INFERENCES = max(0, int(os.getenv("QUEUED_INFERENCES", "1")))
|
|||||||
# PyTorch threads used by EACH running prediction. Total CPU use is roughly
|
# PyTorch threads used by EACH running prediction. Total CPU use is roughly
|
||||||
# PARALLEL_INFERENCES * TORCH_THREADS, so keep the product <= your CPU cores.
|
# PARALLEL_INFERENCES * TORCH_THREADS, so keep the product <= your CPU cores.
|
||||||
TORCH_THREADS = max(1, int(os.getenv("TORCH_THREADS", "1")))
|
TORCH_THREADS = max(1, int(os.getenv("TORCH_THREADS", "1")))
|
||||||
MAX_UPLOAD_BYTES = 5 * 1024 * 1024
|
MAX_UPLOAD_BYTES = int(max(1, float(os.getenv("MAX_UPLOAD_MEGABYTES", "15"))) * 1024 * 1024)
|
||||||
MAX_FRAME_BYTES = 1 * 1024 * 1024
|
MAX_FRAME_BYTES = 1 * 1024 * 1024
|
||||||
MAX_IMAGE_PIXELS = 20_000_000
|
MAX_IMAGE_PIXELS = 20_000_000
|
||||||
MAX_WEBSOCKETS = 3
|
MAX_WEBSOCKETS = 3
|
||||||
|
|||||||
+2
-2
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
email marvin.krausser277@gmail.com
|
email {$CADDY_EMAIL:marvin.krausser277@gmail.com}
|
||||||
}
|
}
|
||||||
|
|
||||||
(common) {
|
(common) {
|
||||||
@@ -25,7 +25,7 @@ marvinkrausser.com {
|
|||||||
api.marvinkrausser.com {
|
api.marvinkrausser.com {
|
||||||
import common
|
import common
|
||||||
request_body {
|
request_body {
|
||||||
max_size 10MB
|
max_size {$CADDY_MAX_BODY:16MB}
|
||||||
}
|
}
|
||||||
reverse_proxy cnn_api:8000
|
reverse_proxy cnn_api:8000
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,10 @@ services:
|
|||||||
- "80:80"
|
- "80:80"
|
||||||
- "443:443"
|
- "443:443"
|
||||||
restart: unless-stopped
|
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:
|
volumes:
|
||||||
- ./caddy/data:/data/caddy
|
- ./caddy/data:/data/caddy
|
||||||
- ./caddy/config:/config/caddy
|
- ./caddy/config:/config/caddy
|
||||||
@@ -41,6 +45,7 @@ services:
|
|||||||
- PREDICT_RATE_WINDOW=60
|
- PREDICT_RATE_WINDOW=60
|
||||||
- REVIEW_RATE_LIMIT=5
|
- REVIEW_RATE_LIMIT=5
|
||||||
- REVIEW_RATE_WINDOW=60
|
- REVIEW_RATE_WINDOW=60
|
||||||
|
- MAX_UPLOAD_MEGABYTES=15
|
||||||
cpus: "5"
|
cpus: "5"
|
||||||
mem_limit: 3g
|
mem_limit: 3g
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user