Settu upp Docker og lærðu Basic Container Manipulation í CentOS og RHEL 8/7 - Part 1


Í þessari 4 greinaröð munum við ræða Docker, sem er opinn uppspretta léttur sýndarvæðingarverkfæri sem keyrir efst á stýrikerfisstigi, sem gerir notendum kleift að búa til, keyra og dreifa forritum, hjúpuð í litla ílát.

Sýnt hefur verið fram á að þessi tegund af Linux gámum er hröð, færanleg og örugg. Ferlarnir sem keyra í Docker gámi eru alltaf einangraðir frá aðalhýslinum, sem kemur í veg fyrir utanaðkomandi fikt.

Þessi kennsla veitir upphafspunkt um hvernig á að setja upp Docker, búa til og keyra Docker gáma á CentOS/RHEL 8/7, en klórar varla yfirborð Docker.

Skref 1: Settu upp og stilltu Docker

1. Fyrri útgáfur af Docker voru kallaðar docker eða docker-engine, ef þú ert með þetta uppsett verður þú að fjarlægja þær áður en þú setur upp nýrri docker-ce útgáfu.

# yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

2. Til að setja upp nýjustu útgáfuna af Docker Engine þarftu að setja upp Docker repository og setja upp yum-utils pakkann til að virkja Docker stable repository á kerfinu.

# yum install -y yum-utils
# yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

3. Settu nú upp nýrri docker-ce útgáfuna úr Docker repository og containerd handvirkt, vegna þess að vegna sumra vandamála, hindraði Red Hat uppsetningu á containerd.io > 1.2.0-3.el7, sem er háð docker-ce.

# yum install https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm
# yum install docker-ce docker-ce-cli

4. Eftir að Docker pakkinn hefur verið settur upp, ræstu púkann, athugaðu stöðu hans og virkjaðu hann um allt kerfið með eftirfarandi skipunum:

# systemctl start docker 
# systemctl status docker
# systemctl enable docker

5. Að lokum skaltu keyra gámaprófunarmynd til að sannreyna hvort Docker virkar rétt, með því að gefa út eftirfarandi skipun:

# docker run hello-world

Ef þú getur séð skilaboðin hér að neðan, þá er allt á réttum stað.

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/

6. Nú geturðu keyrt nokkrar helstu Docker skipanir til að fá smá upplýsingar um Docker:

# docker info
# docker version

7. Til að fá lista yfir allar tiltækar Docker skipanir skaltu slá inn docker á vélinni þinni.

# docker

Skref 2: Sæktu Docker mynd

8. Til þess að ræsa og keyra Docker gám verður fyrst að hlaða niður mynd frá Docker Hub á gestgjafann þinn. Docker Hub býður upp á mikið af ókeypis myndum úr geymslum sínum.

Til að leita að Docker mynd, Ubuntu, til dæmis, gefðu út eftirfarandi skipun:

# docker search ubuntu

9. Eftir að þú hefur ákveðið hvaða mynd þú vilt keyra út frá þínum þörfum skaltu hlaða henni niður á staðnum með því að keyra skipunina hér að neðan (í þessu tilviki er Ubuntu mynd hlaðið niður og notuð):

# docker pull ubuntu

10. Til að skrá allar tiltækar Docker myndir á gestgjafanum þínum skaltu gefa út eftirfarandi skipun:

# docker images

11. Ef þú þarft ekki Docker mynd lengur og þú vilt fjarlægja hana úr gestgjafanum skaltu gefa út eftirfarandi skipun:

# docker rmi ubuntu

Skref 3: Keyrðu Docker Container

Þegar þú framkvæmir skipun gegn mynd færðu í grundvallaratriðum ílát. Eftir að skipuninni sem er keyrt inn í gáminn lýkur hættir gámurinn (þú færð gám sem er ekki í gangi eða farinn út). Ef þú keyrir aðra skipun í sömu mynd aftur er nýr ílát búinn til og svo framvegis.

Allir gámarnir sem búnir eru til verða áfram á hýsilskráarkerfinu þar til þú velur að eyða þeim með því að nota docker rm skipunina.

12. Til þess að búa til og keyra ílát þarftu að keyra skipun í niðurhalaða mynd, í þessu tilfelli, Ubuntu, svo grunnskipun væri að birta dreifingarútgáfuskrána inni í ílátinu með því að nota cat skipun, eins og í eftirfarandi dæmi:

# docker run ubuntu cat /etc/issue

Ofangreind skipun skiptist sem hér segir:

# docker run [local image] [command to run into container]

13. Til að keyra einn af gámunum aftur með skipuninni sem var keyrð til að búa hann til, fyrst verður þú að fá gámaauðkennið (eða nafnið sem Docker myndar sjálfkrafa) með því að gefa út skipunina hér að neðan, sem sýnir lista yfir keyrandi og stöðvaðir (ekki í gangi) gámar:

# docker ps -l 

14. Þegar auðkenni gáma hefur verið náð geturðu ræst gáminn aftur með skipuninni sem var notuð til að búa til hann, með því að gefa út eftirfarandi skipun:

# docker start 923a720da57f

Hér táknar strengurinn 923a720da57f auðkenni gáma.

15. Ef gámurinn er í gangi geturðu fengið auðkenni hans með því að gefa út docker ps skipunina. Til að stöðva hlaupandi gámavandamál docker stop skipun með því að tilgreina gámaauðkennið eða sjálfvirkt myndað nafn.

# docker stop 923a720da57f
OR
# docker stop cool_lalande
# docker ps

16. Glæsilegri valkostur svo þú þurfir ekki að muna gámaauðkennið væri að úthluta einstöku nafni fyrir hvern gám sem þú býrð til með því að nota --name valkostinn á skipanalínunni, eins og í eftirfarandi dæmi:

# docker run --name ubuntu20.04 ubuntu cat /etc/issue

17. Síðan, með því að nota nafnið sem þú úthlutaðir fyrir gáminn, geturðu stjórnað gámnum (byrja, stöðva, fjarlægja, toppa, tölfræði) frekar með því að nota nafn hans, eins og í dæmunum hér að neðan:

# docker start ubuntu20.04
# docker stats ubuntu20.04
# docker top ubuntu20.04 

Vertu meðvituð um að sumar af ofangreindum skipunum gætu ekki birt nein úttak ef skipunarferlinu sem var notað til að búa til ílátið lýkur. Þegar ferlinu sem keyrir inni í ílátinu lýkur stoppar ílátið.

Skref 4: Keyrðu gagnvirka lotu í gám

18. Til þess að tengjast gagnvirkt inn í gámaskeljalotu og keyra skipanir eins og þú gerir á öðrum Linux lotum, gefðu út eftirfarandi skipun:

# docker run -it ubuntu bash

Ofangreind skipun skiptist sem hér segir:

  1. -i er notað til að hefja gagnvirka lotu.
  2. -t úthlutar TTY og tengir stdin og stdout.
  3. ubuntu er myndin sem við notuðum til að búa til ílátið.
  4. bash (eða /bin/bash) er skipunin sem við keyrum inni í Ubuntu ílátinu.

19. Til að hætta og fara aftur til hýsingaraðila úr hlaupandi gámalotunni verður þú að slá inn exit skipunina. Hætta skipunin lýkur öllum gámaferlum og stöðvar það.

# exit

20. Ef þú ert gagnvirkt skráð(ur) inn á gámaútstöðvakvaðningu og þú þarft að halda gámnum í gangi en hætta gagnvirku lotunni, geturðu hætt í stjórnborðinu og farið aftur í hýsingarstöðina með því að ýta á Ctrl+p og Ctrl+q lyklar.

21. Til að tengjast aftur við ílátið sem er í gangi þarftu auðkenni eða nafn ílátsins. Gefðu út docker ps skipun til að fá auðkennið eða nafnið og keyrðu síðan docker attach skipunina með því að tilgreina gámaauðkenni eða nafn, eins og sýnt er á myndinni hér að ofan:

# docker attach <container id>

22. Til að stöðva hlaupandi ílát frá hýsillotunni skaltu gefa út eftirfarandi skipun:

# docker kill <container id>

Það er allt fyrir grunn gámameðferð. Í næstu kennslu munum við ræða hvernig á að vista, eyða og keyra vefþjón í Docker ílát.