KROK 01Připrav opakovatelné závislosti
Použij podporovanou verzi Pythonu kompatibilní s projektem. Příklad používá Python 3.13 a předpokládá requirements.txt s ověřenými verzemi fastapi, uvicorn a dalších knihoven. Aplikace exportuje app z main.py. Lokální virtuální prostředí na server nekopíruj.
KROK 02Sestav přehledný runtime
Kontejner spouští Uvicorn na portu 3000 pro společný Compose recept. Jeden worker je výchozí bod, ne příslib výkonu; každý další spotřebuje paměť. Vývojový reload do produkce nepatří.
FROM python:3.13-slim
WORKDIR /app
COPY requirements.txt ./
RUN pip install --no-cache-dir -r requirements.txt
RUN useradd --create-home appuser
COPY --chown=appuser:appuser . .
USER appuser
EXPOSE 3000
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "3000"]KROK 03HTTPS patří na okraj
Použij Caddy z Docker Compose návodu a Uvicorn nech soukromý. Pokud aplikace vytváří přesměrování nebo potřebuje znát původní schéma klienta, nastav důvěryhodné forwarded headers podle skutečné proxy. Nevěř hlavičkám libovolných klientů.
KROK 04Ověř chování aplikace
Otestuj health endpoint a reprezentativní API požadavek. Migrace databáze odděl od souběžného startu workerů. Uploady nenechávej jen v dočasném filesystemu kontejneru. V logu hledej chyby importu, proměnných a závislostí.
docker compose logs --tail=100 app
docker compose psCOPY → YOUR AI
Vezmi si další krok do svého chatu.
Bezpečný kontext k tomuto návodu. Žádné tajné údaje. Funguje pro ChatGPT, Claude i další asistenty.
Zdroje a technická dokumentace
FastAPI deployment ↗Docker documentation ↗Postup je vzor pro uvedené předpoklady. Před použitím na živém serveru ověř kompatibilitu svého projektu a konkrétní konfiguraci.