- FastAPI + APScheduler + SQLite, single container - Daily generation at 06:00 Europe/Copenhagen + cold-start generation - Retry with backoff (3 attempts/15 min), stale fallback with banner - OpenAI-compatible endpoint via env (OPENAI_BASE_URL/MODEL/API_KEY) - docker-compose with named volume for joke persistence
5 lines
72 B
Plaintext
5 lines
72 B
Plaintext
fastapi>=0.111
|
|
uvicorn[standard]>=0.30
|
|
httpx>=0.27
|
|
apscheduler>=3.10,<4
|