Docker dla początkujących: Wszystko, co musisz wiedzieć

Jun 15, 2025
Dystrybucja

Doker Tworzy zapakowane aplikacje nazywane pojemnikami. Każdy kontener zapewnia na białym tle środowisko podobne do maszyna wirtualna (VM). W przeciwieństwie do VMS, Docker Containers Nie prowadzisz pełnego systemu operacyjnego . Udostępniają jądro swojego hosta i wirtualizują na poziomie oprogramowania.

Podstawy dokera

Docker stał się standardowym narzędziem dla programistów i administratorów systemu. Jest to schludny sposób na szybkie uruchomienie aplikacji bez wpływu na resztę systemu. Możesz spinować nową usługę za pomocą jednego Uruchomienie dokowca Komenda.

Kontenery enkapsulacyjne wszystko potrzebne do uruchomienia aplikacji, z zależności od pakietów OS do własnego kodu źródłowego. Definiujesz kroki tworzenia kontenera jako instrukcje w Dockerfile. . Doker używa Dockerfile do konstruowania obraz .

Obrazy definiują oprogramowanie dostępne w kontenerach. Jest to luźno równoważny rozpoczęciu VM z systemem operacyjnym ISO. Jeśli utworzysz obraz, każdy użytkownik Docker będzie mógł uruchomić aplikację Uruchomienie dokowca .

Jak działa doker?

Kontenery wykorzystują cechy jądra systemu operacyjnego, aby zapewnić częściowo zwirtualizowane środowiska. Możliwe jest tworzenie pojemników od podstaw poleceń chroot. . Uruchamia się proces z określonym katalogiem głównym zamiast korzenia systemu. Ale korzystanie z funkcji jądra bezpośrednio jest skrzyple, niepewny i podatny na błędy.

Doker jest kompletnym rozwiązaniem do produkcji, dystrybucji i stosowania pojemników. Nowoczesne wydania dokująca składają się z kilka niezależnych elementów . Po pierwsze, jest doker Cli. , co wchodzi w interakcję w terminalu. CLI wysyła polecenia na Daceper Daemon. . Może to działać lokalnie lub na zdalnym hoście . Demon jest odpowiedzialny za zarządzanie kontenerów i obrazy są tworzone.

Końcowy składnik nazywa się Runtime pojemnika . Wykonał funkcje jądra, aby faktycznie uruchomić pojemniki. Doktor jest kompatybilny z biegaczami, które przylegają do Specyfikacja OCI. Ten otwarty standard pozwala na interoperacyjność między różnymi narzędziami kontenerowymi.

Nie musisz zbyt wiele martwić o wewnętrzne działania Dockera, gdy zaczynasz się zacząć. Instalacja doker W systemie da Ci wszystko, czego potrzebujesz, aby zbudować i uruchomić kontenery.

Dlaczego tak wielu ludzi używa dokera?

Kontenery stały się tak popularne, ponieważ rozwiążą wiele wspólnych wyzwań w rozwoju oprogramowania. Umiejętność połączania się raz na wszędzie Zmniejsza różnicę między Twoje środowisko programistyczne i Twoje serwery produkcyjne.

Za pomocą kontenerów zapewnia pewność siebie, że każde środowisko jest identyczne. Jeśli masz nowego członka zespołu, tylko muszą Uruchomienie dokowca Aby utworzyć własną instancję rozwoju. Po uruchomieniu usługi możesz użyć obrazu dokującego, aby wdrożyć produkcję. ten Środowisko na żywo dokładnie pasuje do Twojej lokalnej instancji, unikając "Działa na moich maszynach" scenariusze.

Doktor jest wygodniejszy niż pełna maszyna wirtualna. VMS to narzędzia ogólnego przeznaczenia mające na celu wspieranie każdego możliwego obciążenia pracą. Natomiast kontenery są lekkie, samowystarczalne, a lepiej nadaje się do wyrzucania przypadków użytkowania. Jako dokujący dzieli się jądro gospodarza, pojemniki mają znikomy wpływ na wydajność systemu. Czas uruchomienia pojemnika jest prawie natychmiastowy, jak tylko rozpoczynasz procesy, a nie cały system operacyjny.

Pierwsze kroki

Doker jest dostępny na wszystkich popularnych rozkładach Linuksa. Działa również na systemie Windows i MacO. Podążaj za Instrukcje konfiguracji dokera dla platformy zdobyć go i uruchomić.

Możesz sprawdzić, czy instalacja działa rozpoczął prosty pojemnik:

 Docker Run Hello-World 

Spowoduje to uruchomienie nowego kontenera z podstawowym Witaj świecie obraz. Obraz emituje pewne wyjście wyjaśniające, jak korzystać z dokera. Pojemnik wychodzi, z powrotem z powrotem do terminalu.

Tworzenie zdjęć

Po uruchomieniu Witaj świecie , jesteś gotowy stworzyć własne obrazy dokujące. Dockerfile opisuje, jak uruchomić usługę Instalowanie wymaganego oprogramowania. i kopiowanie w plikach. Oto prosty przykład za pomocą serwera WWW Apache:

 Z httpd: najnowsze
Run Echo "Nagłówki LoadModule Headers_modules / Mod_headers.SO" & GT; & GT; /Usr/local/apache2/conf/httpd.conf.conf.
Kopiuj .htaccess /var/www/html/.htaccess.
Kopiuj index.html /var/www/html/index.html.
Kopiuj CSS / VAR / WWW / HTML / CSS 

ten Z Linia definiuje obraz podstawowy. W takim przypadku zaczynamy od oficjalnego obrazu Apache. Dokier ma zastosowanie pozostałych instrukcji w Dockerfile na górnej części podstawy.

ten BIEGAĆ Etap działa polecenie w pojemniku. Może to być dowolne polecenie dostępne w środowisku kontenera. Włączamy nagłówki Moduł Apache, który może być używany przez .htaccess. Plik, aby skonfigurować reguły routingu.

Ostateczne linie skopiują pliki HTML i CSS w katalogu roboczym na obraz kontenera. Twój obraz zawiera teraz wszystko, co musisz uruchomić swoją stronę.

Teraz możesz zbudować obraz:

 Docker Build -T My-Website: V1. 

Docker użyje swojego DockerFile do skonstruowania obrazu. Zobaczysz wyjście w terminalu, ponieważ Docker uruchamia każdą instrukcję.

ten -T W poleceniu Tagi Twój obraz z daną nazwą ( My-Website: V1 ). To ułatwia odniesienie do przyszłości. Tagi mają dwa elementy, oddzielone dwukropkiem. Pierwsza część ustawia nazwę obrazu, podczas gdy drugi zazwyczaj oznacza swoją wersję. Jeśli pominiesz okrężnicę, doker zostanie domyślny używać najnowszy jako wersja znacznika.

ten . Na końcu polecenia mówi dokerowi korzystanie z DockerFile w lokalnym katalogu roboczym. To także Ustawia kontekst budowy , umożliwiając używanie plików i folderów w katalogu roboczym KOPIUJ instrukcje w dnakerfile.

Po utworzeniu obrazu możesz uruchomić kontener za pomocą Uruchomienie dokowca :

 Dokument Run -D -P 8080: 80 My-Website: V1 

Używamy kilku dodatkowych flag Uruchomienie dokowca tutaj. ten -D Flaga sprawia, że ​​Docker Cli odłącza się od kontenera, umożliwiając mu uruchomienie w tle. Mapowanie portu jest zdefiniowane -P , Więc Port 8080 na mapach hostów do Port 80 w pojemniku. Jeśli odwiedzasz stronę internetową LocalHost: 8080. W Twojej przeglądarce.

Obrazy dokująca są tworzone z warstw. Każda instrukcja w Dockerfile tworzy nową warstwę. Możesz użyć zaawansowanych funkcji budowlanych Odniesienie wielu obrazów bazowych , Odrzucając warstwy pośrednie z wcześniejszych obrazów.

Rejestry obrazów

Gdy masz obraz, możesz go wypychać do rejestru. Rejestry Zapewnij scentralizowaną pamięć. aby można było dzielić pojemniki z innymi. Domyślny rejestr jest Hub Docker. .

Po uruchomieniu polecenia odnosi się do obrazu, Docker najpierw sprawdza, czy jest dostępny lokalnie. Jeśli tak nie, spróbuje wyciągnąć go z piasta dokującego. Możesz ręcznie wyciągnąć obrazy za pomocą Docker Pull. Komenda:

 Docker Pull Httpd: Najnowsze 

Jeśli chcesz opublikować obraz, utwórz Hub Docker. konto. Biegać Docker Login. i wprowadź nazwę użytkownika i hasło.

Następnie oznacz swój obraz za pomocą nazwy użytkownika Docker Hub:

 Docker Tag My-Image: Najnowsza Docker-Hub-Nazwa użytkownika / My-Image: Najnowsze 

Teraz możesz nacisnąć obraz:

 Docker Push Docker-Nazwa użytkownika / My-Image: Najnowsze 

Inni użytkownicy będą mogli wyciągnąć swój obraz i rozpocząć pojemniki z nim.

Możesz Uruchom własny rejestr Jeśli potrzebujesz prywatnego przechowywania obrazu. Kilka usług innych firm Oferuj rejestry dokowców. jako alternatywy dla piasty do dokera.

Zarządzanie koncentrantami

Docker CLI ma kilka poleceń, aby poradzić sobie z kontenerami prowadzącymi. Oto niektóre z najbardziej przydatnych, aby wiedzieć:

Listowanie pojemników

Docker PS. Pokazuje wszystkie swoje pojemniki do biegania. Dodanie -a Flaga również pokaże zatrzymane pojemniki.

Zatrzymywanie i pojemniki startowe

Aby zatrzymać pojemnik, uruchom Doker zatrzymuje mój pojemnik . Zastępować My-Container. z nazwą kontenera lub identyfikatorem. Możesz uzyskać te informacje od ps. Komenda. Został ponownie uruchomiony pojemnik Doktor start My-Container .

Pojemniki zwykle biegają tak długo, jak ich główny proces pozostaje żywy. Uruchom ponownie zasady Kontroluj, co się dzieje, gdy pojemnik zatrzymuje się lub uruchamia się hosta. Przechodzić --Restart zawsze. do Uruchomienie dokowca Aby natychmiast uruchomić się pojemnik natychmiast po zatrzymaniu.

Dostanie muszli

Możesz uruchom polecenie kontener za pomocą Docker Exec my-Container My-Command . Jest to przydatne, gdy chcesz ręcznie wywołać plik wykonywalny oddzielny do głównego procesu kontenera.

Dodaj -to Flaga Jeśli potrzebujesz interaktywnego dostępu. Pozwala to upuścić w skorupę, biegając Docker Exec -it My-Container Sh .

Logi monitorujące

Docker automatycznie zbiera wyjście emitowane do standardowego wejścia i wyjścia kontenera. ten Doktor loguje mój kontener Polecenie pokaże dzienniki kontenera w terminalu. ten --śledzić Flaga ustawia ciągły strumień, dzięki czemu można wyświetlić dzienniki w czasie rzeczywistym.

Sprzątanie zasobów

Stare pojemniki i obrazy mogą szybko gromadzić się w systemie. Posługiwać się Docker RM My-Container aby usunąć pojemnik według swojego identyfikatora lub nazwy.

Polecenie dla obrazów jest Docker RMI My-Image: Najnowsze . Przekazać identyfikator obrazu lub pełną nazwę znacznika. Jeśli określisz znacznik, obraz nie zostanie usunięty, dopóki nie ma przypisanych znaczników. W przeciwnym razie podany znacznik zostanie usunięty, ale inne znaczniki obrazu pozostaną użyteczne.

Czyszczenie masowe są możliwe przy użyciu Docker Crune. Komenda . Daje to łatwy sposób na usunięcie wszystkich zatrzymanych pojemników i redundantnych obrazów.

Zarządzanie graficzne

Jeśli terminal nie jest twoją rzecz, możesz użyć narzędzi innych firm Ustaw graficzny interfejs do dokera . Daszynki sieciowe pozwalają szybko monitorować i zarządzać instalacją. Pomagają również zrobić zdalne sterowanie kontenerami.

Trwałe przechowywanie danych.

Domyślnie kontenery dokująca są efemeryczne. Zmiany dokonane w systemie plików kontenera nie będą się utrzymywać po zatrzymaniu pojemnika. To nie jest bezpieczne Uruchom dowolną formę systemu przechowywania plików W pojemniku rozpoczął się od podstawowego Uruchomienie dokowca Komenda.

Jest kilka różnych podejść do Zarządzanie trwałymi danymi . Najczęstszym jest użycie objętości dokującej. Wolumeny to jednostki magazynowe które są zamontowane w systemie plików kontenerowych. Wszelkie dane w objętości pozostaną nienaruszone po zatrzymaniu jego połączonego kontenera, pozwalając podłączyć inny pojemnik w przyszłości.

Utrzymywanie bezpieczeństwa

Dockerized obciążenia mogą być bezpieczniejsze niż ich odpowiedniki gołe metalowe, ponieważ Docker zapewnia pewne separacja pomiędzy systemem operacyjnym a usługami. Niemniej jednak Docker jest potencjalnym problemem bezpieczeństwa, jak to normalnie działa AS. źródło i można je wykorzystać, aby uruchomić złośliwe oprogramowanie.

Jeśli prowadzisz Docker jako narzędzie do rozwoju, domyślna instalacja jest ogólnie bezpieczna w użyciu. Serwery produkcyjne i maszyny z odsłoniętym siecią Daemon Gniazdo powinny być utwardzane przed życiem.

Audyt instalacji dokującej zidentyfikować potencjalne problemy z bezpieczeństwem. Są Dostępne zautomatyzowane narzędzia To może pomóc w znalezieniu słabości i sugerować rezolucje. Możesz także Skanuj pojedyncze obrazy kontenera W przypadku problemów, które można wykorzystać z wewnątrz.

Praca z wieloma pojemnikami

ten doker Polecenie działa tylko z jednym pojemnikiem na raz. Często chcesz używać kontenerów w kruszywie. Skomponować doker to narzędzie, które umożliwia zdefiniowanie kontenerów deklaratywnie w pliku YAML. Możesz uruchomić je wszystkie komendy.

Jest to pomocne, gdy twój projekt zależy od innych usług, takich jak zaplecze internetowe, które opiera się na serwerze bazy danych. Możesz zdefiniować oba pojemniki w swoim Docker-Compose.yml. i korzystać z usprawnionych zarządzania Automatyczne sieciowe .

Oto proste Docker-Compose.yml. plik:

 Wersja: "3"
Usługi:
  Aplikacja:
    Obraz: serwer aplikacji: najnowszy
    Porty:
      - 8000: 80
  Baza danych:
    Obraz: serwer bazy danych: najnowszy
    wolumeny:
        - Dane bazy danych: / Dane
wolumeny:
    Dane bazy danych: 

Definiuje to dwa pojemniki ( aplikacja oraz Baza danych ). Głośność jest tworzona dla bazy danych. To zostanie zamontowane /dane w pojemniku. Port 80 serwera aplikacji jest odsłonięty jako 8000 na hoście. Biegać Docker-Compose Up -d Aby spinować zarówno usługi, w tym sieć i objętość.

Wykorzystanie kompozycji dokowca pozwala Ci Napisz wielokrotnego użytku Definicje kontenerów, które można podzielić się z innymi. Możesz popełnić Docker-Compose.yml. do sterowania wersją zamiast posiadania programistów zapamiętanych Uruchomienie dokowca polecenia.

Istnieją również inne podejścia do prowadzenia wielu kontenerów. Aplikacja Docker jest pojawiające się rozwiązanie, które zapewnia kolejny poziom abstrakcji. Gdzie indziej w ekosystemie, Podman jest alternatywą dokującą To pozwala tworzyć "strąki" pojemników w terminalu.

Kontenerowa orkiestracja

Docker nie jest normalnie uruchamiany jako produkcja. Teraz częściej stosuje platformę orkiestracyjną, takimi jak Kubernetes. lub tryb sharmu dokującego. Te narzędzia są przeznaczone do obsługi wielokrotne repliki kontenerów, co poprawia skalowalność i niezawodność.

Doker jest tylko jednym komponentem w szerszym ruchu kontenerii. Orchestratory wykorzystać to samo Kontenerowi technologie środowiska wykonawczego, aby zapewnić środowisko, które jest lepsze dopasowanie do produkcji. Korzystanie z wielu instancji kontenerów Pozwala na toczenia aktualizacji Jak również dystrybucja w maszynach, dzięki czemu wdrożenie bardziej odporne na zmianę i przestój. Regularny doker CLI celuje jeden gospodarz i współpracuje z indywidualnymi pojemnikami.

Potężna platforma do kontenerów

Doker daje ci wszystko, czego potrzebujesz do pracy z kontenerami. Stało się kluczowym narzędziem do rozwoju oprogramowania i administracji systemowej. Główne korzyści są zwiększone izolacji i przenośności dla indywidualnych usług.

Zapoznanie się z dokerem wymaga zrozumienia podstawowego kontenera i koncepcji obrazu. Możesz zastosować je, aby utworzyć wyspecjalizowane obrazy i środowiska, które kontenerują obciążenia.


Dystrybucja - Najpopularniejsze artykuły

Jak ukryć wszystkie ikony pulpitu na Mac

Dystrybucja Jun 23, 2025

Krisda / Shutterstock. Czy twój komputer ma bałagan? Nie chcę wszystkiego zorganizować wszystkiego? Nie martw się, możesz użyć komendy terminala, aby s..


Co nowego w Linux Mint 20.2 „Uma”

Dystrybucja Jul 8, 2025

Linux Mint, jeden z bardziej dystrybucje Linux popularny , Wydała wersję 20.2, zwany „Uma”. Chodzi o nowe funkcje, modernizowanych wewnętrznych i innych zmian. Dziś je..


Co nowego w Linux Kernel 5.14

Dystrybucja Sep 9, 2025

Sean Locke Fotografia / Shutterstock Jak Linux zamienia 30 lat, kernel 5.14 została wydana. Zawiera on zwykle szeroką ofertę wewnętrznych poniżej-the-kapt..


Co to jest pop! _OS?

Dystrybucja Oct 20, 2025

Jeśli o tym słyszałeś Pop! _Os. , mógłbyś zobaczyć ludzi często odnoszących się do tego jako najlepszej alternatywy systemu Windows lub idealnej dystrybucji Linuksa..


Czy możesz zainstalować Linuksa na M1 Apple Silicon Mac?

Dystrybucja Nov 12, 2024

Nie wszyscy kupuje komputer Mac wyłącznie prowadzić MacOS. Zła wiadomość jest taka, że ​​od 2021 listopada 2021 r. Natywne wsparcie Linuksa na Apple Silicon nie jest jeszcze m..


Jak zabić proces Linux według numeru portu

Dystrybucja Oct 4, 2025

Aby zabić proces Linux, potrzebujesz jego identyfikatora lub nazwy. Jeśli wszystko, co wiesz, to port, którego używa, czy nadal możesz go zabić? Tak, na kilka różnych sposobów. P..


Jak znaleźć PID procesu Linux z PIDOF lub PGREP

Dystrybucja Nov 15, 2024

Praca z procesem Linuksa często oznacza znajomość jego identyfikatora procesu lub PID. Jest to unikalny numer podany każdemu elementowi działającego oprogramowania. Oto dwa sposoby, aby d..


Jak radzić sobie z przestrzeniami w nazwach plików w Linux

Dystrybucja Dec 14, 2024

Podobnie jak większość systemów operacyjnych, Linux obsługuje nazwy plików z przestrzeniami w nich. Ale użycie tych nazw plików w wierszu poleceń nie zawsze jest proste. Oto kilka spos..


Kategorie