MLOps Academy · Lekcja

Pisanie Dockerfile dla API modelu

Krok po kroku umieść usługę FastAPI w kontenerze

Lekcja 1 z 413 kroki

Pisanie Dockerfile dla API modelu to bezpłatna lekcja MLOps Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej MLOps Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs MLOps Academy zawiera 4 lekcji w sumie.

Po co Dockerfile

Twoje API modelu działa na laptopie, ale psuje się w innych miejscach. Dockerfile to przepis, który wszędzie tworzy dokładnie takie samo środowisko.

Wybierz obraz bazowy

Każdy Dockerfile zaczyna się od instrukcji FROM wskazującej obraz bazowy. Odchudzony obraz Pythona zapewnia interpreter bez zbędnego, rozrośniętego systemu operacyjnego.

FROM python:3.11-slim

Ustaw katalog roboczy

Instrukcja WORKDIR wybiera folder, w którym wykonywane są polecenia. Jeśli go brakuje, zostanie utworzony, dzięki czemu późniejsze ścieżki pozostaną przejrzyste i przewidywalne.

WORKDIR /app

Najpierw skopiuj wymagania

Najpierw skopiuj osobno plik requirements.txt, jeszcze przed kodem. Docker zapisuje tę warstwę w pamięci podręcznej, więc instalacja jest pomijana, gdy zmienia się tylko aplikacja.

COPY requirements.txt .

Zainstaluj zależności

Uruchom pip install wewnątrz obrazu. Flaga --no-cache-dir pomija pamięć podręczną pip i nieco zmniejsza końcowy obraz.

RUN pip install --no-cache-dir -r requirements.txt

Skopiuj kod

Teraz użyj COPY, aby skopiować resztę projektu. Wykonanie tego po instalacji sprawia, że zmiany w kodzie nie unieważniają warstwy pamięci podręcznej zależności.

COPY . .

Udokumentuj port

Instrukcja EXPOSE deklaruje port, na którym nasłuchuje API. Jest to dokumentacja dla ludzi i narzędzi, a nie faktyczne otwarcie portu.

EXPOSE 8000

Zdefiniuj polecenie uruchamiające

Instrukcja CMD określa, co zostanie uruchomione podczas startu kontenera. Tutaj uruchamia Uvicorn, aby obsługiwał aplikację modelu FastAPI.

CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "8000"]

Nasłuchuj na wszystkich interfejsach

W kontenerze trzeba uruchomić usługę na 0.0.0.0, a nie na 127.0.0.1. W przeciwnym razie host nie będzie mógł dotrzeć do modelu przez zmapowany port.

Zbuduj obraz

Przekształć przepis w obraz za pomocą docker build. Flaga -t nadaje mu nazwę, której można później użyć do uruchomienia i wysłania obrazu.

docker build -t model-api .

Warstwy są buforowane

Każda instrukcja staje się buforowaną warstwą. Uporządkuj je od najrzadziej do najczęściej zmienianych, aby przebudowy nadal przebiegały szybko.

Szybkie sprawdzenie

Sprawdźmy kolejność budowania, która najlepiej wykorzystuje pamięć podręczną.

Podsumowanie

Napisano plik Dockerfile: obraz bazowy, katalog roboczy, instalację z pamięcią podręczną, kopiowanie, expose i polecenie uruchamiające. Teraz API modelu buduje się tak samo wszędzie. 🐳

Bezpłatny start

Ucz się Python dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
30
Lekcje
120

Często zadawane pytania

Czy lekcja „Pisanie Dockerfile dla API modelu” jest bezpłatna?

Tak — pełny tekst „Pisanie Dockerfile dla API modelu” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu MLOps Academy, przejdź na CoddyKit PRO. Kurs MLOps Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Pisanie Dockerfile dla API modelu”?

Krok po kroku umieść usługę FastAPI w kontenerze Ćwiczysz MLOps Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć MLOps Academy?

Nie wymagamy żadnego doświadczenia. MLOps Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.

Ile czasu zajmuje lekcja „Pisanie Dockerfile dla API modelu”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji MLOps Academy?

Tak. Każda lekcja MLOps Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Pisanie Dockerfile dla API modelu
  2. Odchudzanie obrazów za pomocą kompilacji wieloetapowych
  3. Przekazywanie konfiguracji przez zmienne środowiskowe
  4. Lokalne uruchamianie i testowanie kontenera
← Powrót do MLOps Academy