Jak instalować, uruchamiać i usuwać aplikacje wewnątrz kontenerów Docker - Część 2

Jak instalować, uruchamiać i usuwać aplikacje wewnątrz kontenerów Docker - Część 2

Po poprzednich Doker Artykuł, w tym samouczku omówi się, jak zapisać kontener Docker na nowy obraz, usunąć pojemnik i uruchomić Nginx serwer WWW w kontenerze.

Wymagania

  • Jak zainstalować Docker i uruchomić kontenery w Centos/RHEL 8/7 - Część 1

Jak uruchomić i zapisać kontener Docker

1. W tym przykładzie uruchomimy i zapisujemy Oparte na Ubuntu Kontener dokera, gdzie nginx serwer zostanie zainstalowany. Ale przed zaangażowaniem jakichkolwiek zmian w kontenerze, najpierw uruchom kontener z poniższymi poleceniami, które aktualizują i instalują Nginx Demon do obrazu Ubuntu:

# Docker Run Ubuntu Bash -c "apt -get -y aktualizacja" # Docker Run Ubuntu Bash -c "apt -get -y instaluj nginx" 
Zainstaluj Nginx na kontenerze Docker Ubuntu

Jeśli otrzymasz błąd 'E: Nie można zlokalizować pakietu nginx', następnie musisz podłączyć się do kontenera z interaktywnym CLI i zainstalować Nginx, jak pokazano.

# Docker Run -it Ubuntu Bash # apt Zainstaluj nginx # exit 

2. Następnie Nginx Pakiet jest zainstalowany, wydaj polecenie Docker PS -L aby uzyskać ID Lub nazwa bieżącego pojemnika.

# Docker PS -L 
Znajdź nazwę identyfikatora kontenera Docker

I zastosuj zmiany, uruchamiając poniższe polecenie:

# Docker zatwierdzenie 5976e4ae287c Ubuntu-Nginx 

Tutaj, 5976e4ae287c reprezentuje pojemnik ID I Ubuntu-Nginx reprezentuje nazwę nowego obrazu, który został zapisany za pomocą zaangażowanych zmian.

Aby zobaczyć, czy nowy obraz został pomyślnie utworzony Obrazy dokera Polecenie i lista wszystkich zapisanych obrazów zostanie wyświetlona.

# Obrazy dokera 
Zmiany kontenera Docker

Są szanse, że proces instalacji wewnątrz kontenera kończy się szybko, co prowadzi do nieruchomego pojemnika (pojemnik jest zatrzymany). W tym przypadku Docker Ps polecenie nie wyświetla żadnych wyjściowych, ponieważ żaden kontener nie działa.

Aby móc nadal zdobyć identyfikator kontenera Docker PS -a | głowa -3 Aby wyprowadzić najnowsze kontenery i zidentyfikować kontener na podstawie polecenia wydanego w celu utworzenia kontenera i statusu wyjściowego.

3. Alternatywnie możesz aktywnie wprowadzić sesje kontenerowe, uruchamiając Docker Run -it Ubuntu Bash polecić i wykonaj dalej apt-get instaluj nginx Komenda. Podczas uruchamiania polecenia odłącz od kontenera za pomocą Ctrl-P + Ctrl-Q Klawisze i kontener będą nadal działać, nawet jeśli proces instalacji Nginx zakończy się.

# Docker Run -it Ubuntu Bash # apt -get Instaluj nginx 
Zainstaluj Nginx na kontenerze Docker

Następnie zdobądź bieżący identyfikator kontenera z Docker Ps i popełnić zmiany. Po zakończeniu ponownie wejdź do konsoli kontenerowej za pomocą Docker dołącz i typ Wyjście Aby zatrzymać pojemnik.

# Docker PS # Docker załącz 3378689f2069 # wyjście 
Dołącz kontener Docker

4. Aby dalej sprawdzić, czy ostatni obraz został właściwie popełniony (w tym przypadku Nginx Usługa została zainstalowana), Wykonaj poniższe polecenie, aby wygenerować nowy kontener, który wyjdzie, jeśli pomyślnie zainstalowano Nginx Binary:

# Docker uruchom ubuntu-nginx, gdzie jest nginx 
Wygeneruj nowy kontener Docker

5. Aby usunąć pojemnik, użyj Rm polecenie na identyfikator lub nazwie kontenera, który można uzyskać za pomocą za pomocą Docker PS -A Komenda:

# Docker PS -A # sudo Docker RM 36488523933a 
Usuń kontener Docker

Jak uruchomić Nginx Inside Contener

6. W tej części skoncentrujemy się na tym, jak możesz uruchomić i uzyskać dostęp do usługi sieciowej, takiej jak Nginx serwer WWW, Inside Docker, za pomocą Ubuntu-Nginx obraz utworzony wcześniej, w którym zainstalowano demona Nginx.

Pierwszą rzeczą, którą musisz zrobić, jest utworzenie nowego kontenera, portów-hosta mapy i wpisuj powłokę kontenerową, wydając poniższe polecenie:

# Docker Run -it -p 81:80 Ubuntu -Nginx /bin /bash # nginx & 

Tutaj -P Opcja ujawnia port hosta na port kontenerowy. Chociaż port hosta może być dowolny, ze warunkiem, że powinien być dostępny (żadne inne usługi hosta nie powinny go słuchać), port kontenerowy musi być dokładnie portem, którego słucha wewnętrzny demon.

Po podłączeniu do sesji kontenerowej zacznij Nginx demon w tle i odłącz od konsoli kontenerowej, naciskając Ctrl-P + Ctrl-Q Klucze.

Uruchom Nginx Inside Contener

7. Teraz biegnij Docker Ps Aby uzyskać stan bieżącego pojemnika. Możesz także wyświetlić gniazda sieci hosta, wydając następujące polecenie:

# Docker PS lub # netstat -tlpn 
Wyświetl stan kontenera Dockera

8. Aby odwiedzić stronę obsługiwaną przez kontener Nginx, otwórz przeglądarkę ze zdalnej lokalizacji w sieci LAN i wpisz adres IP komputera za pomocą protokołu HTTP.

Sprawdź nginx działający pod Container Docker

9. Aby zatrzymać kontener, uruchom następujące polecenie, a następnie identyfikator kontenera lub nazwa:

# Docker PS # Docker Stop Fervent_Mccarthy # Docker PS 
Przestań uruchamiać kontener Docker

Jako alternatywę, aby zatrzymać działający kontener, wprowadź wiersz polecenia powłoki kontenera i wpisz wyjście, aby zakończyć proces:

# Docker załącz Fervent_Mccarthy # Exit 

Należy pamiętać, że użycie tego rodzaju kontenera do uruchamiania serwerów internetowych lub innych usług najlepiej nadaje się tylko do celów programistycznych lub testów, ponieważ usługi są aktywne tylko podczas działania kontenera. Wyjście z kontenera zakłóca wszystkie uruchomione usługi lub wszelkie wprowadzone zmiany.

Dalsze czytanie:

Część 3: Automatycznie buduj i skonfiguruj obrazy Docker z DockerFile na Centos/RHEL 8/7 Część 4: Jak monitorować kontenery Docker w Linux