Użyj wieloetapowych kompilacji Docker, aby utrzymać rozmiar obrazu?

Użyj wieloetapowych kompilacji Docker, aby utrzymać rozmiar obrazu?

Obrazy Dockera są jednym z najważniejszych elementów platformy Docker, które są używane do zarządzania i instruowania kontenerów. Obrazy dokera Przeczytaj instrukcje z DockerFile i podaj wspomniane zależności od kontenerów Docker w celu budowania i wdrażania projektu. Dlatego rozmiar obrazów Docker jest również ogromny.

Czasami jednak programiści wykonują prosty program lub kilka wierszy kodu. W takim scenariuszu obraz o ogromnym rozmiarze nie jest odpowiedni, a to zajmuje większość miejsca systemu, aby wykonać prosty program.

Ten zapis ilustruje, jak wykorzystać wieloetapową kompilację, aby utrzymać rozmiar obrazu.

Jak wygenerować obraz dokera?

Aby zbudować prosty obraz w celu kontenerowania aplikacji, najpierw utwórz prosty plik tekstowy o nazwie DockerFile. Następnie użyj „Docker Build„Aby wygenerować świeży obraz dokera. Aby utworzyć nowy obraz Docker, sprawdź podane kroki.

Krok 1: Uruchom terminal

Najpierw uruchom terminal systemowy do wykonywania poleceń. Na przykład uruchomiliśmy „Git Bash„Git Terminal:

Krok 2: Zrób nowy katalog

Następnie utwórz nowy katalog z pomocą „Mkdir" Komenda:

$ mkdir SmallImage

Przejdź do nowo utworzonego katalogu za pomocą „płyta CD" Komenda:

$ CD SmallImage

Krok 3: Utwórz DockerFile

W następnym kroku utwórz prosty plik dokujący. Użytkownicy mogą ręcznie utworzyć plik docker. Na przykład wykorzystaliśmy „Nano„Edytor w celu wygenerowania pliku na terminalu:

$ Nano Dockerfile

Wklej poniżej kodowanego fragmentu w „Dockerfile". Te instrukcje będą prowadzić prostą aplikację Golang:

Od Golang: 1.8 jako budowniczy
WorkDir/Go/Src/App
Kopiuj główny.Iść .
RUN GO BUDLE -O WEBSERVER .
CMD [”./serwer internetowy"]

Idź naprzód, aby wygenerować świeży obraz dokera.

Krok 4: Wygeneruj obraz Docker

Następnie zbuduj obraz Docker za pomocą wspomnianego polecenia. Tutaj "-T„Opcja jest wykorzystywana do podania nazwy obrazu:

$ Docker Build -t NormalImage .

Krok 5: Sprawdź obraz dokera

Wyświetl nowo utworzony obraz, aby sprawdzić, czy obraz jest utworzony, czy nie:

$ Docker Images NormalImage

Ze wyjścia można zauważyć, że rozmiar prostego obrazu Dockera wynosi 719 MB:

Jak korzystać z wieloetapowych kompilacji Docker, aby utrzymać rozmiar obrazu?

W przypadku wieloetapowej kompilacji wykorzystywana jest plik Docker z instrukcjami wieloetapowymi. Instrukcje podstawowe zawierają zależności w kompilacjach wieloetapowych, a instrukcje dzieci zawierają instrukcje dotyczące wdrażania programów. Ilekroć kontener potrzebuje wszelkich zależności, będzie dostępny ze etapu podstawowego. Rozmiar obrazu jest automatycznie zmniejszony w wieloetapowych kompilacjach.

Kontynuuj pod kontrolą poniżej instrukcji, aby używać kompilacji wielostopniowych, aby utrzymać rozmiar obrazu.

Krok 1: Otwórz plik docker

Najpierw otwórz plik dokujący za pomocą „Nano" Edytor tekstu:

$ Nano Dockerfile

Krok 2: Zmodyfikuj DockerFile na wielostopni

Zmień instrukcje Dockerfile na instrukcje wielopoziomowe, jak pokazano poniżej:

Od Golang: 1.8 jako budowniczy
WorkDir/Go/Src/App
Kopiuj główny.Iść .
RUN GO BUDLE -O WEBSERVER .Z alpejskiego
WorkDir /App
Kopiuj - -from = Builder/Go/src/app//app//
CMD [”./serwer internetowy"]

Krok 3: Odbuduj obraz dokera

Następnie utwórz wieloetapowy obraz Docker za pomocą poniższego komendy:

$ Docker Build -t NormalImage .

Następnie potwierdź, czy obraz jest utworzony, czy nie za pomocą podanego polecenia:

$ Docker Images NormalImage

Można zauważyć, że obraz jest tworzony pomyślnie. Jego rozmiar jest zmniejszony tylko do „12.9 MB”:

Wykazaliśmy, jak używać wieloetapowej kompilacji, aby utrzymać rozmiar obrazu.

Wniosek

W wieloetapowej wersji instrukcje Dockerfile są podzielone na wiele etapów. Instrukcja podstawowa zawiera instrukcje instalacji i zależności wymagane przez kontener, a instrukcje dzieci są używane do wdrażania i budowania projektów. Aby wykorzystać wieloetapową kompilację Docker, najpierw utwórz wieloetapowy plik dokujący. Następnie wygeneruj obraz dokera przez „Docker Build -t " Komenda. Ten blog zilustrował, jak korzystać z wielostopniowej kompilacji Docker, aby zmniejszyć rozmiar obrazu.