Docker zbuduj przewodnik dla początkujących po budowaniu obrazów Docker

Docker zbuduj przewodnik dla początkujących po budowaniu obrazów Docker

Docker jest popularnym narzędziem do pakowania i wdrażania aplikacji w odizolowanym środowisku, a kluczową częścią przepływu pracy Docker jest budowanie obrazów Docker. Możemy budować własne obrazy za pomocą obrazów podstawowych i używać ich do tworzenia kontenerów. Możemy również wyciągnąć obrazy bezpośrednio z piasty Docker (https: // hub.doker.com/) dla naszej aplikacji. W tym przewodniku dla początkujących wyjaśnimy, czym są obrazy Docker i jak je zbudować.

Co to jest obraz dokera?

Obraz Docker to lekki, samodzielny i wykonywalny pakiet, który zawiera wszystko, co potrzebne do uruchomienia oprogramowania, w tym kodu, środowiska wykonawczego, bibliotek, zmiennych środowiskowych i plików konfiguracyjnych.

Obrazy Docker są zbudowane na technologii kontenerów open source Docker, która pozwala programistom pakować i wdrażać aplikacje w kontenerze, co ułatwia konsekwentne uruchamianie aplikacji w różnych środowiskach.

Jak zbudować obraz dokera

Aby zbudować obraz dokera, musisz utworzyć plik docker, który jest plik tekstowym zawierającym zestaw instrukcji budowania obrazu. DockerFile mówi Dockerowi, co robić podczas budowania obrazu, na przykład, które pliki należy uwzględnić, które biblioteki zainstalować i które polecenia do uruchomienia.

Oto przykład Dockerfile, który tworzy prosty obraz Pythona:

Od Pythona: 10-Slim Copy . /App WorkDir /App Uruchom Wymagania instalacyjne -r.TXT CMD [„Python”, „Main.py "]
12345678Od Pythona: 10-Slim Copy . /AppWorkDir /App Uruchom wymagania instalacji PIP -R.TXT CMD [„Python”, „Main.py "]

W tym przykładzie:

  • Dockerfile zaczyna się od instrukcji „od”, która określa obraz podstawowy do użycia jako punkt wyjścia dla nowego obrazu. W takim przypadku używamy 'Python: 3.10-slik obraz, który zawiera minimalną wersję Python 3.10.
  • 'KOPIUJ' Instrukcja kopiuje pliki z bieżącego katalogu (.) do „/App” katalog na obrazie.
  • „Workdir” Instrukcje ustawia katalog roboczy na „/App”, tak, aby wszelkie kolejne polecenia zostały uruchomione z tego katalogu.
  • 'URUCHOMIĆ' Instrukcja uruchamia polecenie do zainstalowania zależności Pythona określonych w 'wymagania.tekst' plik.
  • Wreszcie „CMD” Instrukcja określa polecenie do uruchomienia po uruchomieniu kontenera. W tym przypadku działa 'główny.py ' Skrypt Pythona.

Aby zbudować obraz, możesz użyć polecenia Docker Build i określić „Dockerfile” i nazwa obrazu:

Docker Build -t my-python-app .  

To zbuduje obraz i da mu tag „My-Python-App”. Następnie możesz uruchomić obraz za pomocą „Docker Run” Komenda:

Docker prowadzi My-Python-App  

Zarządzanie obrazami Docker

Po zbudowaniu obrazów Dockera jest kilka zadań, które może być konieczne wykonanie, aby zarządzać. Oto kilka typowych zadań zarządzania obrazami Docker:

  • Obrazy listy:
  • Możesz użyć „Docker Images” polecenie, aby wymienić wszystkie obrazy w twoim systemie. Wyjście będzie zawierać repozytorium, tag i identyfikator obrazu dla każdego obrazu.

    Obrazy dokera  Identyfikator obrazu znacznika repozytorium utworzony Rozmiar My-Python-App Najnowsze FC6A1ED7B9FB 3 minuty temu 967 MB Python 3.10-Slim BD4E6CDB1E80 7 dni temu 142 MB 

  • Usuwanie obrazów:
  • Aby usunąć obraz, możesz użyć „Docker RMI” polecenie, a następnie identyfikator lub repozytorium obrazu i znacznik. Na przykład, aby usunąć obraz My-Python-App, możesz użyć następującego polecenia:

    Docker RMI My-Python-App  

  • Tagowanie obrazów:
  • Możesz użyć tagów, aby podać swoje obrazy opisowe nazwy i łatwo zarządzać wieloma wersjami. Aby oznaczyć obraz, możesz użyć „Tag Docker” polecenie, a następnie „Identyfikator obrazu”, repozytorium i nazwa znacznika oraz wartość znacznika. Na przykład, aby oznaczyć „My-Python-App” obraz z '1.0 ' Tag, możesz użyć następującego polecenia:

    Docker Tag FC6A1ED7B9FB MY-Python-App: 1.0  

  • Pchanie obrazów do rejestru:
  • Rejestr jest miejscem do przechowywania obrazów Docker i możesz użyć rejestru, aby udostępniać swoje zdjęcia innym lub wdrażać je w środowisku produkcyjnym. Aby popchnąć obraz do rejestru, najpierw musisz zalogować się do rejestru za pomocą „logowanie Docker” polecenie, a następnie użyj „Docker Push” polecenie, aby przesłać obraz. Na przykład, aby popchnąć „My-Python-App” Obraz do rejestru Docker Hub możesz użyć następujących poleceń:

    login dockera  Docker popychał My-Python-App  

  • Wyciąganie obrazów z rejestru:
  • Aby wyciągnąć obraz z rejestru, możesz użyć „Docker Pull” Polecenie, a następnie nazwa repozytorium i tagu. Na przykład, aby wyciągnąć obraz My-Python-App z rejestru Docker Hub, możesz użyć następującego polecenia:

    Docker ciągną My-Python-App  

Korzystając z tych poleceń, możesz łatwo zarządzać obrazami Docker i udostępniać je innym.

Najlepsze praktyki budowania obrazów Docker

Podczas budowania obrazów Dockera należy pamiętać o kilku najlepszych praktykach:

  • Użyj minimalnego obrazu podstawowego: Zasadniczo dobrym pomysłem jest użycie minimalnego obrazu podstawowego, takiego jak alpejska lub szczupła, aby zachować wielkość obrazu tak małego.
  • Uproście plik dockerów: Staraj się zachować jak najwyraźniej plik dokujący, przy czym każda instrukcja robi jedną rzecz. To ułatwi zrozumienie i utrzymanie.
  • Użyj kompilacji wielostopniowych: Jeśli aplikacja ma wiele kroków kompilacji, takich jak budowanie i testowanie, możesz użyć kompilacji wielostopniowych, aby utworzyć pojedynczy obraz, który zawiera tylko niezbędne komponenty. Może to pomóc zmniejszyć rozmiar obrazu.
  • Użyj buforowania: Docker ma wbudowany mechanizm pamięci podręcznej, który przechowuje pośrednie wyniki każdej instrukcji w „Dockerfile
  • Użyć .plik Dockerignore: Podobne do .plik Gitignore, a .Plik Dockerignore pozwala określić wzorce dla plików i katalogów, które należy wykluczyć podczas budowania obrazu. Może to pomóc poprawić wydajność budowy i utrzymać rozmiar obrazu w mniejszym stopniu.
  • Użyj zmiennych środowiskowych: Zamiast wartości hardkodowania w pliku dokerowym, możesz użyć zmiennych środowiskowych, aby obraz był bardziej elastyczny i łatwiejszy.
  • Informuj obraz: Ważne jest, aby zachować aktualne obrazy podstawowe i wszystkie zainstalowane pakiety, aby upewnić się, że masz najnowsze łatki bezpieczeństwa i funkcje.
  • Przetestuj obraz: Przed wdrożeniem obrazu warto go przetestować, aby upewnić się, że działa zgodnie z oczekiwaniami. Możesz użyć Docker Compose, aby skonfigurować lokalne środowisko programistyczne i uruchomić obraz w pojemniku.

Wniosek

W tym przewodniku omówiliśmy podstawy budowania obrazów Docker i zapewniliśmy najlepsze praktyki do naśladowania. Postępując zgodnie z tymi wytycznymi, możesz tworzyć wydajne i niezawodne obrazy Docker, które można łatwo wdrożyć i utrzymywać.