BOOKISH_SECRET=cambia-questa-chiave-lunga-e-casuale PORT=5000 BOOKISH_CLEANUP_HOURS=1 # Gunicorn: solo se dietro reverse proxy che imposta X-Forwarded-For. # (lista separata da virgole, es. 127.0.0.1,172.17.0.1) # FORWARDED_ALLOW_IPS=127.0.0.1 # AUTENTICAZIONE OPTIONAL (Basic) — attiva se entrambe valorizzate #BOOKISH_AUTH_USERNAME=admin #BOOKISH_AUTH_PASSWORD=cambia-me # RATE LIMIT upload per IP/ora (0 = disabilitato, default 20) #BOOKISH_RATE_LIMIT_UPLOAD=20 # LOGGING STRUTTURATO (R7): "json" emette una riga JSON per log (grep/jq/loki) #LOG_FORMAT=json #LOG_LEVEL=info # TIMEOUT CONVERSIONI in secondi (default 300). Alza per libri lunghi/PDF #BOOKISH_CONVERSION_TIMEOUT=600 # BUILD REPRODUCIBILE (R4b): sha256 di requirements.lock. Il default in # docker-compose.yml è già il pin corrente; in dev sovrascrivi con: # REQUIREMENTS_CHECKSUM="" → skippa il check in build locale # quando aggiorni le dipendenze (pip-compile) aggiorna anche il pin: # sed -i "s/[a-f0-9]\{64\}/$(sha256sum requirements.lock | awk '{print $1}')/" docker-compose.yml #REQUIREMENTS_CHECKSUM=d13e4fb14a909e0bd06d20894860152d5334aa341dd9dec2e5e4ca368a0d2a62