Instal·lació Docker a Fedora

Docker

Requeriments

Sistema operatiu

Per instal·lar docker necessiteu el següents sistemes:

  • Fedora 37
  • Fedora 38

Desinstal·leu versions antigues

Les versions anteriors de Docker tenien els noms de docker o docker-engine. Desinstal·leu aquestes versions anteriors abans d’intentar instal·lar-ne una nova, juntament amb les dependències associades.

$ sudo dnf remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine

dnf podria informar que no teniu cap d’aquests paquets instal·lat.

Les imatges, els contenidors, els volums i les xarxes emmagatzemades a /var/lib/docker/ no s’eliminen automàticament quan desinstal·leu Docker.

Metodes d’instal·lació.

Podeu instal·lar Docker de formes diferents, segons les teues necessitats:

  • Podeu configurar els repositoris de Docker i instal·lar-los des d’ells, per facilitar la instal·lació i les tasques d’actualització. Aquest és l’enfocament recomanat.
  • Podeu descarregar el paquet RPM i instal·lar-lo manualment i gestionar les actualitzacions completament manualment. Això és útil en situacions com ara instal·lar Docker en sistemes amb buit d’aire sense accés a Internet.
  • En entorns de prova i desenvolupament, podeu utilitzar scripts de conveniència automatitzats per instal·lar Docker.

Instal·leu-lo mitjançant el repositori rpm.

Abans d’instal·lar Docker per primera vegada en una màquina anfitrió nova, necessiteu configurar el repositori Docker. Després, podeu instal·lar i actualitzar des del repositori.

Configura el repositori

Instal·leu el paquet dnf-plugins-core (que proporciona les ordres per gestionar els vostres repositoris DNF) i configureu el repositori.

$ sudo dnf -y install dnf-plugins-core
$ sudo dnf config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo

Instal·leu Docker

  1. Instal·leu Docker Engine, containerd, i Docker Compose:

A) Per instal·lar la darrera versió, executeu:

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

Si se us demana que accepteu la clau GPG, comproveu que l’empremta digital coincideix 060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35i, si és així, accepteu-la.
Aquesta ordre instal·la Docker, però no inicia Docker. També crea un dockergrup, però, per defecte, no afegeix cap usuari al grup.


B) Per instal·lar una versió específica, comenceu per llistar les versions disponibles al repositori:

$ dnf list docker-ce --showduplicates | sort -r

docker-ce.x86_64    3:24.0.0-1.fc37    docker-ce-stable
docker-ce.x86_64    3:23.0.6-1.fc37    docker-ce-stable
<...>

La llista que es retorna depèn dels dipòsits habilitats i és específica de la vostra versió de Fedora (indicada pel .fc37sufix en aquest exemple).

Instal·leu una versió específica pel seu nom de paquet complet, que és el nom del paquet ( docker-ce) més la cadena de versió (2a columna), separats per un guionet ( -). Per exemple, docker-ce-3:24.0.0-1.fc37.

Substituïu la <VERSION_STRING> per la versió desitjada i, a continuació, executeu l’ordre següent per instal·lar:

$ sudo dnf -y install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io docker-buildx-plugin docker-compose-plugin

Aquesta ordre instal·la Docker, però no inicia Docker. També crea un dockergrup, però, per defecte, no afegeix cap usuari al grup.


  1. Inicieu Docker. $ sudo systemctl start docker
  2. 2. Comproveu que la instal·lació de Docker Engine sigui correcta executant la hello-worldimatge. $ sudo docker run hello-world Aquesta ordre baixa una imatge de prova i l’executa en un contenidor. Quan el contenidor s’executa, imprimeix un missatge de confirmació i surt.

Ara heu instal·lat i iniciat correctament Docker Engine.

Consell

Rebreu errors en intentar executar- se sense root?

El dockergrup d’usuaris existeix però no conté usuaris, per això cal que l’utilitzeu sudo per executar les ordres de Docker. Continueu amb la postinstal·lació de Linux per permetre als usuaris sense privilegis executar ordres de Docker i altres passos de configuració opcionals

Acualitza el motor Docker.

Per actualitzar Docker Engine, seguiu les instruccions d’instal·lació i escolliu la versió nova que voleu instal·lar.

Instal·lar des d’un paquet

Si no podeu utilitzar rpmel repositori de Docker per instal·lar Docker Engine, podeu descarregar el .rpmfitxer de la vostra versió i instal·lar-lo manualment. Cal que baixeu un fitxer nou cada vegada que vulgueu actualitzar Docker Engine.

  1. Aneu a https://download.docker.com/linux/fedora/ i trieu la vostra versió de Fedora. A continuació, busqueu x86_64/stable/Packages/i baixeu el fitxer .rpmde la versió de Docker que voleu instal·lar.
  2. Instal·leu el motor Docker, canviant la ruta següent a la ruta on heu baixat el paquet Docker. $ sudo dnf -y install /path/to/package.rpm Docker està instal·lat però no s’ha iniciat. El dockergrup es crea, però no s’afegeix cap usuari al grup.
  3. Inicieu Docker. $ sudo systemctl start docker
  4. Comproveu que la instal·lació del motor Docker sigui correcta executant la imatgehello-world. $ sudo docker run hello-world Aquesta ordre baixa una imatge de prova i l’executa en un contenidor. Quan el contenidor s’executa, imprimeix un missatge de confirmació i surt.

Ara heu instal·lat i iniciat correctament el motor Docker .

Consell

Rebreu errors en intentar executar-se sense root?

El grup d’usuaris docker existeix però no conté usuaris, per això cal que l’utilitzeu sudoper executar les ordres de Docker. Continueu amb la postinstal·lació de Linux per permetre als usuaris sense privilegis executar ordres de Docker i altres passos de configuració opcionals.

Actualitza el motor Docker

Per actualitzar el motor Docker, baixeu els fitxers de paquets més nous i repetiu el procediment d’instal·lació, utilitzant dnf -y upgradeen comptes de dnf -y install i assenyaleu els fitxers nous.

Instal·leu-lo mitjançant l’script de conveniència

Docker ofereix un script de comoditat a https://get.docker.com/ per instal·lar Docker en entorns de desenvolupament de manera no interactiva. L’script de conveniència no es recomana per a entorns de producció, però és útil per crear un script d’aprovisionament adaptat a les vostres necessitats. Consulteu també la instal·lació mitjançant els passos del dipòsit per obtenir informació sobre els passos d’instal·lació per instal·lar mitjançant el dipòsit de paquets. El codi font de l’script és de codi obert i el podeu trobar al docker-install repositori de GitHub.

Examineu sempre els scripts descarregats d’Internet abans d’executar-los localment. Abans d’instal·lar, familiaritzeu-vos amb els possibles riscos i limitacions de l’script de conveniència:

  • L’script requereix rooto sudoprivilegis per executar-se.
  • L’script intenta detectar la vostra distribució i versió de Linux i configurar el vostre sistema de gestió de paquets.
  • L’script no us permet personalitzar la majoria dels paràmetres d’instal·lació.
  • L’script instal·la dependències i recomanacions sense demanar confirmació. Això pot instal·lar un gran nombre de paquets, depenent de la configuració actual de la vostra màquina amfitrió.
  • De manera predeterminada, l’script instal·la la darrera versió estable de Docker, containerd i runc. Quan s’utilitza aquest script per subministrar una màquina, això pot provocar actualitzacions importants inesperades de la versió de Docker. Proveu sempre les actualitzacions en un entorn de prova abans d’implementar-les als vostres sistemes de producció.
  • L’script no està dissenyat per actualitzar una instal·lació de Docker existent. Quan s’utilitza l’script per actualitzar una instal·lació existent, és possible que les dependències no s’actualitzin a la versió esperada, donant lloc a versions obsoletes.

Consell: previsualitza els passos de l’script abans d’executar-los

Podeu executar l’script amb l’ --dry-runopció d’esbrinar quins passos s’executarà quan s’invoqui:

 $ curl -fsSL https://get.docker.com -o get-docker.sh
 $ sudo sh ./get-docker.sh --dry-run

Aquest exemple baixa l’script de https://get.docker.com/ i l’executa per instal·lar la darrera versió estable de Docker a Linux:

$ curl -fsSL https://get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh
Executing docker install script, commit: 7cae5f8b0decc17d6571f9f52eb840fbc13b2737
<...>

Ara heu instal·lat i iniciat correctament Docker Engine. El servei docker s’inicia automàticament a les distribucions basades en Debian. En distribucions basades en RPM, com CentOS, Fedora, RHEL o SLES, cal que l’inicieu manualment mitjançant l’ ordre systemctlo servicel’ordre adequat. Com indica el missatge, els usuaris no root no poden executar ordres Docker de manera predeterminada.

Utilitzeu Docker com a usuari sense privilegis o instal·leu-lo en mode sense arrel?

L’script d’instal·lació requereix privilegisrooto sudo per instal·lar i utilitzar Docker. Si voleu concedir accés a Docker a usuaris no root, consulteu els passos posteriors a la instal·lació per a Linux . També podeu instal·lar Docker sense privilegis root o configurat per executar-se en mode sense arrel. Per obtenir instruccions sobre com executar Docker en mode sense arrel, consulteu executar el dimoni Docker com a usuari no root (mode sense arrel).

Instal·leu versions prèvies.

Docker també proporciona un script de comoditat a https://test.docker.com/ per instal·lar versions prèvies de Docker a Linux. Aquest script és igual a l’script a get.docker.com, però configura el vostre gestor de paquets perquè utilitzi el canal de prova del dipòsit de paquets Docker. El canal de prova inclou versions estables i prèvies (versions beta, candidats al llançament) de Docker. Utilitzeu aquest script per obtenir accés anticipat a les noves versions i per avaluar-les en un entorn de proves abans que es publiquin com a estables.

Per instal·lar la darrera versió de Docker a Linux des del canal de prova, executeu:

$ curl -fsSL https://test.docker.com -o test-docker.sh
$ sudo sh test-docker.sh

Actualitzeu Docker després d’utilitzar l’script de conveniència

Si heu instal·lat Docker mitjançant l’script de conveniència, hauríeu d’actualitzar Docker mitjançant el vostre gestor de paquets directament. No hi ha cap avantatge de tornar a executar l’script de conveniència. Tornar a executar-lo pot causar problemes si intenta tornar a instal·lar dipòsits que ja existeixen a la màquina amfitriona.

Desinstal·leu Docker Engine

  1. Desinstal·leu els paquets Docker Engine, CLI, containerd i Docker Compose: $ sudo dnf remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
  2. Les imatges, els contenidors, els volums o els fitxers de configuració personalitzats del vostre amfitrió no s’eliminen automàticament. Per suprimir totes les imatges, contenidors i volums: $ sudo rm -rf /var/lib/docker $ sudo rm -rf /var/lib/containerd

Heu de suprimir els fitxers de configuració editats manualment.

Feu un comentari