Wéi installéiere a benotzt Docker op Ubuntu 20.04


Docker ass eng populär Open-Source Plattform fir Entwéckler a Systemadministratoren fir Uwendungen mat Container ze bauen, ze lafen an ze deelen. Containeriséierung (d'Benotzung vu Container fir Uwendungen z'installéieren) gëtt populär well Container flexibel, liicht, portabel, locker gekoppelt, skalierbar a méi sécher sinn.

Dësen Artikel ass e gudde Startpunkt fir Ufänger fir ze léieren wéi een Docker op engem Ubuntu 20.04 Linux System installéiert a benotzt mat e puer Basisbefehle. Fir dëse Guide wäerte mir Docker Community Edition (CE) installéieren.

  • Eng Installatioun vum Ubuntu 20.04 Server.
  • E Benotzer mat Privilegien fir sudo Kommando auszeféieren.

Installéiert Docker op Ubuntu 20.04

Fir déi lescht Versioun vum Docker ze benotzen, installéiere mir se vum offiziellen Docker Repository. Also, fänke mat der GPG Schlëssel fir den offiziellen Docker Repository op Äre System un, duerno füügt d'Repository Konfiguratioun un d'APT Quell mat de folgende Kommandoen.

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"

Elo aktualiséieren den APT Package Cache fir déi nei Docker Packagen an de System mat dem folgenden Kommando opzehuelen.

$ sudo apt update

Als nächst installéiert den Docker Package wéi gewisen.

$ sudo apt install docker-ce

Wärend dem Docker Package Installatiounsprozess ausléist de Package Installer de Systemd (System a Service Manager) fir den Docker Service automatesch unzefänken an z'aktivéieren. Benotzt déi folgend Kommandoen fir ze bestätegen datt den Docker-Service aktiv ass an aktivéiert ass fir automatesch beim Systemstart ze starten. Kontrolléiert och säi Status:

$ sudo systemctl is-active docker
$ sudo systemctl is-enabled docker
$ sudo systemctl status docker

Et gi verschidde aner Systemctl Kommandoen fir den Docker Service ze managen an ze kontrolléieren déi folgend enthält:

$ sudo systemctl stop docker			#stop the docker service
$ sudo systemctl start docker			#start the docker service
$ sudo systemctl  restart docker		#restart the docker service

Fir d'Versioun vum Docker CE op Ärem System installéiert ze kontrolléieren, fuert de folgende Kommando:

$ docker version

Dir kënnt verfügbar Docker Benotzungsbefehle gesinn andeems Dir den Docker Kommando ausféiert ouni Optiounen oder Argumenter:

 
$ docker

Verwalten Docker als Net-Root Benotzer mat sudo Command

Par défaut bindt den Docker-Daemon un en UNIX-Socket (amplaz vun engem TCP-Port) deen am Besëtz vun der Benotzerroot ass. Dofir leeft den Docker Daemon ëmmer als de Root Benotzer a fir den Docker Kommando auszeféieren, musst Dir sudo benotzen.

Ausserdeem gëtt während der Docker Package Installatioun e Grupp genannt docker erstallt. Wann den Docker-Daemon ufänkt, erstellt en UNIX-Socket zougänglech vu Membere vun der Docker-Grupp (wat Privilegien gläichwäerteg mam Root-Benotzer gëtt).

Fir den Docker-Kommando ouni sudo auszeféieren, füügt all net-root Benotzer un, déi op Docker zougänglech sinn, an der Docker-Grupp wéi follegt. An dësem Beispill füügt de Kommando den aktuell ageloggte Benotzer ($USER) oder Benotzernumm un d'Docker-Grupp:

$ sudo usermod -aG docker $USER
OR
$ sudo usermod -aG docker username

Fir d'Ännerunge fir Gruppen z'aktivéieren, fuert de folgende Kommando:

$ newgrp docker 
$ groups

Als nächst verifizéiert datt Dir Docker Kommandoen ouni sudo ausféiere kënnt. De folgende Kommando luet en Testbild erof a leeft et an engem Container. Wann de Container leeft, dréckt en eng Informatiounsmeldung aus an geet eraus. Dëst ass och eng aner Manéier fir ze iwwerpréiwen ob Är Installatioun gutt funktionnéiert.

$ docker run hello-world

Schafft mat Docker Biller

En Docker Bild ass eng liesbare Schabloundatei mat Instruktioune fir en Docker Container ze kreéieren. Dir kënnt entweder Är personaliséiert Biller erstellen oder Dir kënnt nëmmen déi benotze vun aneren erstallt a publizéiert am Docker Hub, der weltgréisster Bibliothéik a Gemeinschaft fir Containerbilder.

Dir kënnt no engem centos Bild am Docker Hub sichen mat dem folgenden Kommando:

$ docker search centos 

Fir e Bild lokal erofzelueden, benotzt de Pull Kommando. Dëst Beispill weist wéi d'offiziell Centos Bild eroflueden.

$ docker pull centos

Wann den Download fäerdeg ass, kënnt Dir déi verfügbar Biller op Ärem lokalen System oplëschten.

$ docker images

Wann Dir kee Bild méi braucht, kënnt Dir et aus Ärem System läschen.

$ docker rmi centos
OR
$ docker rmi centos:latest    #where latest is the tag

Lafen a managen Docker Container

En Docker Container ass e Prozess deen nativ op Linux leeft an de Kernel vun der Hostmaschinn mat anere Container deelt. Wat en Docker Bild ugeet, ass e Container just e lafend Bild.

Fir e Container op Basis vun Ärem neien centos Bild ze starten, fuert de folgende Kommando aus, wou \centos de lokale Bildnumm ass an \cat /etc/centos-release ass de Kommando fir am Container ze lafen:

$ docker run centos cat /etc/centos-release

E Container leeft en diskrete Prozess deen isoléiert ass an datt et säin eegent huet: Dateiesystem, Vernetzung an isoléierte Prozessbaum getrennt vum Host. Notéiert datt Dir e Container mat der ID, ID-Präfix oder Numm vum Container manipuléiere kënnt wéi hei ënnendrënner. Den uewe genannte Containerprozess geet aus nodeems de Kommando leeft.

Fir Docker Container ze lëschten, benotzt den Docker ps Kommando wéi follegt. Benotzt de -l Fändel fir de leschten erstallte Container an alle Staaten ze weisen:

$ docker ps
OR
$ docker ps -l

Fir all Container ze weisen, och déi, déi erausgaang sinn, benotzt de -a Fändel.

$ docker ps -a

Dir kënnt och e Container mat senger Container ID starten nodeems se erausgaang ass. Zum Beispill, am virege Kommando ass eis Container ID 94c35e616b91. Mir kënnen de Container starten wéi gewisen (Notiz datt et de Kommando ausféiert an erausgeet):

$ docker start 94c35e616b91

Fir e lafende Container mat senger ID ze stoppen, benotzt de Stop Kommando wéi gewisen.

$ docker stop 94c35e616b91

Docker erlaabt Iech och en Numm un engem Container ze ginn andeems Dir d'Optioun --name benotzt wann Dir se leeft.

$ docker run --name my_test centos cat /etc/centos-release
$ docker ps -l

Elo kënnt Dir de Containernumm benotze fir de Container ze verwalten (Start, Stop, Statistiken, ewechhuelen, etc.):

$ docker stop my_test
$ docker start my_test
$ docker stats my_test
$ docker rm my_test

Lafen eng interaktiv Sessioun an engem Docker Container

Fir eng interaktiv Shell-Sessioun an engem Container ze starten fir Iech Kommandoen am Container z'erméiglechen, fuert de folgende Kommando:

$ docker run --name my_test -it centos

Am uewe genannte Kommando soen d'-it Schalter Docker fir e Pseudo-TTY ze verdeelen, verbonne mat dem Stdin vum Container, sou datt eng interaktiv Bash Shell am Container erstallt gëtt.

Dir kënnt ausgoen andeems Dir den Ausgangskommando ausgëtt wéi et ugewise gëtt.

# exit

Wann Dir léiwer net erausgeet, kënnt Dir vun engem Container ofhuelen an et lafe loossen. Fir dat ze maachen, benotzt d'CTRL+p dann CTRL+q Schlësselsequenz.

Dir kënnt zréck op de Container verbannen mat dem Attach Kommando deen lokal Standard Input, Output a Fehlerstreamen un de lafende Container befestegt:

$ docker attach my_test

Ausserdeem kënnt Dir e Container am ofgebauten Modus starten mam -d Fändel. Benotzt dann den Attach Kommando fir Ären Terminal Standard Input, Output a Fehlerstreamen un de lafende Container ze befestigen:

$ docker run --name my_test -d -it centos
$ docker attach my_test

Lescht awer net zulescht kënnt Dir e lafende Container aus der Hostsessioun stoppen andeems Dir de folgende Kommando ausféiert:

$ docker kill my_test

Dat ass alles! An dësem Guide hu mir iwwerdeckt wéi Dir Docker CE an Ubuntu 20.04 Linux installéiere a benotzt. Wann Dir Froen hutt, benotzt de Feedbackformular hei ënnen fir eis ze froen.