Wyślij zapytanie Dołącz do Sii

Kontener to jedno z podstawowych pojęć Dockera. Konteneryzacja pozwala na uruchomienie procesu (programu) w odizolowanym środowisku zawierającym wszystkie zależności wymagane do jego działania.

W tym artykule zostało zdefiniowanie pojęcie kontenera oraz przedstawiono podstawowe operacje, jakie można wykonać na kontenerze.

*Ten wpis jest częścią serii wpisów o Dockerze. Jeżeli jakieś pojęcie zostało użyte bez wyjaśnienia, to prawdopodobnie zostało już wprowadzone w jednym z wcześniejszych wpisów.

** Zachęcamy również do zapoznania się z odświeżonymi w grudniu 2021 i styczniu 2022 artykułami nt. Dockera, które znajdziecie pod tym wpisem.

Czym jest kontener i do czego służy?

Kontener jest ujednoliconą kolekcją warstw składającą się z warstw tylko do odczytu pochodzących z obrazu kontenera i pojedynczej warstwy do odczytu i zapisu. Warstwa do odczytu i zapisu umożliwia działanie procesów uruchamianych w kontenerze.

Graficzna interpretacja kontenera
Ryc. 1 Graficzna interpretacja kontenera

Przeznaczeniem kontenera jest wykonywanie pojedynczego zadania (procesu). Kontener może znajdować się w jednym ze stanów:

  • created – został stworzony, ale jeszcze nie jest uruchomiony,
  • restarting – w trakcie ponownego uruchamiania swojego procesu,
  • up – wykonuje swój proces,
  • paused – proces kontenera został wstrzymany,
  • exited – kontener zakończył wykonywanie swojego procesu.

Tworzenie i uruchamianie

Kontener można stworzyć i uruchomić za pomocą polecenia:

docker run [nazwa lub id obrazu]

Powyższe polecenie zostało przedstawione z minimalną liczbą parametrów. W praktyce jest ono wykonywane z różnymi opcjami, które określają właściwości kontenera.

Na początku warto poznać opcję --name, za pomocą której możemy nazwać kontener. Jeżeli nie podamy własnej nazwy, wtedy wygeneruje ją Docker. Przyjazna nazwa będzie pomocna podczas wykonywania poleceń na kontenerze.

docker run --name="ubuntu-container" ubuntu:15:10

Kontener będzie uruchomiony tak długo, jak będzie wymagało tego działające w nim polecenie. Domyślnie kontener uruchamia polecenie określone w kodzie źródłowym obrazu. W przypadku obrazu ubuntu jest to /bin/bash. Po uruchomieniu, kontener ubuntu-container wykonał polecenie bin/bash, będąc przez niezauważalnie krótki czas w stanie up, a następnie zakończył działanie przechodząc w stan exited.

Kontener domyślnie uruchomi się jako proces pierwszoplanowy. Żeby uruchomić kontener w tle, należy dodać opcję -d (--detach=true) do polecenia docker run.

docker run -d [id lub nazwa obrazu]

Czasami chcemy użyć kontenera tylko po to, żeby jednokrotnie wykonać jego polecenie. W takiej sytuacji warto uruchomić kontener z opcją --rm=true, która spowoduje, że kontener zostanie automatycznie usunięty po zakończeniu działania.

docker run --rm=true [id lub nazwa kontenera]

Wyświetlanie

Listę wszystkich kontenerów można wyświetlić za pomocą polecenia:

docker ps -a
CONTAINER ID    IMAGE           COMMAND        CREATED         STATUS      PORTS    NAMES
64d9865cea19    ubuntu:15.10    "/bin/bash"    23 hours ago    Exited (0)           ubuntu-container

Zatrzymywanie

W celu zatrzymania kontenera należy wykonać polecenie:

docker stop [id lub nazwa kontenera]

Usuwanie

Kontener można usunąć za pomocą polecenia:

docker rm [id lub nazwa kontenera]

Docker nie posiada polecenia usuwającego wszystkie kontenery, ale można je uzyskać, składając polecenie wyświetlające identyfikatory wszystkich kontenerów i polecenie usuwające kontener. Usunięcie wszystkich kontenerów może być szczególnie przydatne na początku nauki.

docker rm $(docker ps -a -q)

* Spis wpisów w serii

** Zaktualizowane w 2021 i 2022 artykuły nt. Dockera

5/5 ( głosy: 4)
Ocena:
5/5 ( głosy: 4)
Autor
Avatar
Piotr Wierzgała

Programista Python zainteresowany tematyką uczenia maszynowego.

Zostaw komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Może Cię również zainteresować

Pokaż więcej artykułów

Bądź na bieżąco

Zasubskrybuj naszego bloga i otrzymuj informacje o najnowszych wpisach.

Otrzymaj ofertę

Jeśli chcesz dowiedzieć się więcej na temat oferty Sii, skontaktuj się z nami.

Wyślij zapytanie Wyślij zapytanie

Natalia Competency Center Director

Get an offer

Dołącz do Sii

Znajdź idealną pracę – zapoznaj się z naszą ofertą rekrutacyjną i aplikuj.

Aplikuj Aplikuj

Paweł Process Owner

Join Sii

ZATWIERDŹ

This content is available only in one language version.
You will be redirected to home page.

Are you sure you want to leave this page?