Verkkosivustohaku

Asenna Docker ja Compose CentOS 8:lle | RHEL 8:lle


Tässä oppaassa käymme läpi vaiheet Docker CE:n asentamiseksi CentOS 8 | RHEL 8 -järjestelmään. Käsittelemme myös, miten Docker Compose asennetaan RHEL 8/CentOS 8 Linuxiin. Dockeria ei virallisesti tueta RHEL 8:ssa, sillä se on korvattu Red Hatin työkaluilla – buildah ja podman. Voit oppia lisää RHEL 8 Linuxin julkaisussa esiintyneistä uusista ominaisuuksista.

  • Red Hat Enterprise Linux 8 (RHEL 8) Uudet ominaisuudet ja arvostelu

Mutta entä jos käytät Dockeria joka päivä etkä voi vaihtaa Buildahiin ja Podmaniin heti? Älä huoli, sillä on tapa asentaa Docker ja Docker Compose RHEL 8:aan/CentOS 8:aan. Docker on työkalu, jonka avulla voit luoda, ottaa käyttöön ja suorittaa sovelluksiasi konteissa. Kontit mahdollistavat kehittäjälle sovelluksen pakkauksen sen riippuvuuksien kanssa ja toimittamisen yhtenä pakettina. Kontteja käytetään usein mikropalveluympäristöissä.

Dockerin komponentit/käsitteet

On olemassa joukko Docker-spesifistä sanastoa, jotka meidän täytyy selventää ennen asennusta ja käyttösovelluksia. Alla on tavallisesti käytettyjä termejä Docker-ekosysteemissä.

  • Docker-daemon: Tätä kutsutaan myös Docker-moottoriksi, se on taustaohjelma, joka toimii isäntäjärjestelmässä ja vastaa konttien rakentamisesta ja ajamisesta.
  • Docker Asiakas: Tämä on komentorivityökalu, jota käyttäjä käyttää ollakseen vuorovaikutuksessa Docker-palvelimen kanssa.
  • Docker-kuva: Kuva on muuttumaton tiedosto, joka on käytännössä säilön tilannekuva. Docker-kuvalla on tiedostojärjestelmä ja sovellusriippuvuudet, joita tarvitaan sovellusten suorittamiseen.
  • Docker-kontti: Tämä on käynnissä oleva docker-kuvan instanssi, joka sisältää sovelluksen ja sen riippuvuudet. Jokaisella kontilla on ainutlaatuinen prosessitunnus, ja ne ovat eristettyjä muista konteista. Ainoa asia, jota kontit jakavat, on ydin.
  • Docker-rekisteri: Tämä on sovellus, joka vastaa Docker-säilökuvien tallennuksen ja jakelun hallinnasta. Se voi olla yksityinen tai julkinen.

Asenna Docker CE CentOS 8:lle | RHEL 8:lle

Tähän mennessä olemme käsitelleet Dockerin johdannon ja termistöä. Meidän pitäisi olla valmiita asentamaan Docker CE RHEL 8/CentOS 8 -käyttöjärjestelmälle. Aloitamme Dockerin asennuksesta ja sen jälkeen Docker Composen asennuksesta.

Dockerista on saatavilla kaksi versiota.

  • Community Edition (CE): ihanteellinen yksittäisille kehittäjille ja pienille tiimeille, jotka haluavat aloittaa Dockerin kanssa ja kokeilla konttipohjaisia sovelluksia.
  • Enterprise Edition (EE): Suunnattu yrityskehitykseen ja IT-tiimeille, jotka kehittävät, julkaisevat ja ylläpitävät tuotannossa liiketoimintakriittisiä sovelluksia suuressa mittakaavassa.

Docker Enterprise Editionin käyttö edellyttää voimassa olevaa lisenssiä. Tässä oppaassa asennamme Docker CE:n RHEL 8:aan. Lisätään Dockerin arkisto ennen asennusta.

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

### RHEL 8 ###
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/rhel/docker-ce.repo

Tämä komento lataa Dockerin arkistotiedoston sijaintiin /etc/yum.repos.d/docker-ce.repo. Päivitetään RPM-indeksin välimuisti.

### CentOS 8 ###
$ sudo yum makecache 
CentOS Linux 8 - AppStream                                                                                                                                             23 kB/s | 4.3 kB     00:00
CentOS Linux 8 - BaseOS                                                                                                                                                20 kB/s | 3.9 kB     00:00
CentOS Linux 8 - Extras                                                                                                                                               9.2 kB/s | 1.5 kB     00:00
Docker CE Stable - x86_64                                                                                                                                             291 kB/s |  19 kB     00:00
DigitalOcean Droplet Agent                                                                                                                                             51 kB/s | 3.3 kB     00:00
Metadata cache created.

### RHEL 8 ###
$ sudo yum makecache 
Updating Subscription Management repositories.
Docker CE Stable - x86_64                                                                                                                                             14 kB/s | 3.8 kB     00:00    
Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs)                                                                                                              33 kB/s | 2.8 kB     00:00    
Red Hat Ansible Engine 2.8 for RHEL 8 x86_64 (RPMs)                                                                                                                   29 kB/s | 2.4 kB     00:00    
Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs)                                                                                                                 30 kB/s | 2.4 kB     00:00    
Red Hat Satellite Tools 6.6 for RHEL 8 x86_64 (RPMs)                                                                                                                  29 kB/s | 2.1 kB     00:00    
Metadata cache created.

Saatat joutua poistamaan kaikki Dockerin vanhemmat versiot yhdessä niihin liittyvien riippuvuuksien kanssa. Poista myös Podman ja sen liittyvät riippuvuudet, jos ne on jo asennettu.

sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine \
                  podman \
                  runc

Asenna lopuksi Docker CE suorittamalla alla oleva komento terminaalissasi.

sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Jos saat riippuvuusongelmia Podmanin kanssa, salli poistaminen.

sudo yum install docker-ce --allowerasing

Hyväksy asennus painamalla näppäimistön y-näppäintä:

...
Transaction Summary
================================================================================================================================================================================================
Install  12 Packages

Total download size: 93 M
Installed size: 389 M
Is this ok [y/N]: y

Tuo myös GPG-avain.

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                            51 MB/s |  93 MB     00:01
Docker CE Stable - x86_64                                                                                                                                        44 kB/s | 1.6 kB     00:00
Importing GPG key 0x621E9F35:
 Userid     : "Docker Release (CE rpm) <[email >"
 Fingerprint: 060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35
 From       : https://download.docker.com/linux/centos/gpg
Is this ok [y/N]: y

Käynnistä ja ota Docker-palvelu käyttöön niin, että se käynnistyy automaattisesti tietokoneen käynnistyessä.

$ sudo systemctl enable --now docker
Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /usr/lib/systemd/system/docker.service.

Docker-palvelun tilan pitäisi näyttää käynnissä.

$ systemctl status  docker

docker-ryhmä on luotu, mutta siihen ei ole lisätty käyttäjiä. Lisää käyttäjäsi tähän ryhmään suorittaaksesi docker-komentoja ilman sudoa

$ sudo usermod -aG docker $USER
$ newgrp docker
$ id $USER
uid=1000(jmutai) gid=1000(jmutai) groups=1000(jmutai),10(wheel),984(docker)

Kirjaudu ulos ja takaisin sisään käyttääksesi Dockeria ilman sudoa. Asennetun Dockerin version voi tarkistaa komennolla:

docker version

Vedä testidocker-kuva

Viimeinen vaihe on testata asennuksesi lataamalla testidocker-kontti.

$ docker pull alpine
Using default tag: latest
latest: Pulling from library/alpine
8e402f1a9c57: Pull complete 
Digest: sha256:644fcb1a676b5165371437feaa922943aaf7afcfa8bfee4472f6860aad1ef2a0
Status: Downloaded newer image for alpine:latest

$ docker pull hello-world
Using default tag: latest
latest: Pulling from library/hello-world
2db29710123e: Pull complete
Digest: sha256:cc15c5b292d8525effc0f89cb299f1804f3a725c8d05e158653a563f15e4f685
Status: Downloaded newer image for hello-world:latest
docker.io/library/hello-world:latest

Listaa ladatut kuvat.

$ docker images
 REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
 alpine              latest              5cb3aa00f899        2 days ago          5.53MB
 hello-world         latest              fce289e99eb9        2 months ago        1.84kB

Varmista, että Docker CE toimii oikein ajamalla alpine-kontti ladatusta kuvasta.

$ docker run -it --rm alpine /bin/sh
/ # apk update
fetch http://dl-cdn.alpinelinux.org/alpine/v3.15/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.15/community/x86_64/APKINDEX.tar.gz
v3.15.4-87-g89e29fdace [http://dl-cdn.alpinelinux.org/alpine/v3.15/main]
v3.15.4-87-g89e29fdace [http://dl-cdn.alpinelinux.org/alpine/v3.15/community]
OK: 9754 distinct packages available
/ # exit

Hei maailma -kontin ajaminen

$ docker run -it --rm hello-world

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/

Asenna Docker Compose CentOS 8:lle | CentOS 8

Meillä on Docker asennettuna ja käynnissä, vaihdetaan nyt vaihde Docker Composeen. Docker Compose on työkalu, jota käytetään monisäiliöisten Docker-sovellusten määrittelyyn ja suorittamiseen.

Sovelluspalvelut on määritetty Compose-tiedoston avulla. Toisin kuin Docker-komentoja ajettaessa, kaikkien palvelujen luomiseen ja käynnistämiseen konfiguraatiostasi tarvitaan vain yksi komento. Docker Compose on erinomainen työkalu kehitys-, testaus- ja välivaiheyhteyksiin sekä CI-työnkulkujen hallintaan.

Noudata erillistä opastamme uusimman Docker Composen asentamiseen Linuxissa.

  • Asenna Docker Compose Linuxiin

Pidettäessä tämä opas tiiviinä emme syvenny Docker Compose -käyttöön. Suosittelen, että tutustut viralliseen Docker-dokumentaatioon ja Docker Compose -dokumentaatioon oppiaksesi lisää.

Asenna Docker-käyttöliittymä – Valinnainen

Jos tarvitset Dockerin hallintaliittymää, joka mahdollistaa erilaisten Docker-isäntien ja -konttien helpon hallinnan, kokeile Portaineria. Sen asentaminen ja käyttö on helppoa.

  • Kuinka asentaa Portainer Docker -käyttöliittymän hallinta

Docker-pakkausten valvonta

Docker-säilöjen valvonta voidaan toteuttaa käyttämällä valvontatyökaluja, kuten Netdataa, Ctopia tai Prometheusta ja Grafanaa. Alla olevat ohjeet voivat olla hyödyllisiä.

  • Ctop – Komento top säiliöiden mittareille
  • Kuinka asentaa Netdata RHEL 8/CentOS 8:lle
  • Asenna Harbor Docker -rekisteri Linuxiin