GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar y usar Docker en Ubuntu 20.04

Docker es un conjunto de productos de plataforma como servicio que utilizan la virtualización a nivel del sistema operativo para entregar software en paquetes denominados contenedores. Los contenedores están aislados unos de otros y agrupan su propio software, bibliotecas y archivos de configuración; pueden comunicarse entre sí a través de canales bien definidos.

Publicaciones relacionadas

  • Cómo instalar y configurar docker en Fedora 34/35
  • Cómo instalar y configurar Docker en Debian 11
  • Cómo instalar y configurar docker en Centos 8
  • Introducción a Docker Compose con ejemplos
  • Docker como agente de compilación:ejecute compilaciones de Jenkins en Docker

Requisitos

Para seguir, asegúrese de tener:

  • Un sistema Ubuntu 20.04
  • Acceso a Internet desde el sistema
  • Acceso raíz o usuario con acceso sudo

Tabla de contenido

  1. Asegúrese de que los paquetes de su sistema estén actualizados
  2. Desinstalar versiones anteriores si las hay
  3. Instalar el motor docker usando el repositorio
  4. Instalar Docker Engine desde un paquete
  5. Instalar usando el script de conveniencia
  6. Verificar instalación
  7. Ejecutar el comando Docker sin Sudo
  8. Desinstalar docker cuando ya no se necesita

1. Asegúrese de que los paquetes de su sistema estén actualizados

Antes de continuar, asegurémonos de que sus paquetes estén actualizados

sudo apt update
sudo apt upgrade -y

2. Desinstalar versiones anteriores si las hay

Los paquetes que proporcionan versiones anteriores de Docker son docker , docker.io o docker-engine .
Utilicemos este comando para asegurarnos de que estos paquetes no existen en nuestro sistema:

sudo apt-get remove -y docker docker-engine docker.io containerd runc

Está bien si apt-get informa que ninguno de estos paquetes está instalado.

Instalando ventana acoplable

Puede instalar Docker Engine de diferentes maneras, según sus necesidades:

  • Puede configurar los repositorios de docker e instalar docker usando apt
  • Puedes descargar los paquetes DEB e instalarlos manualmente
  • Puede optar por utilizar scripts de conveniencia automatizados para instalar Docker

3. Instale el motor docker usando el repositorio

En un host nuevo, los repositorios de Docker no existen. Por primera vez en una nueva máquina host, debe configurar el repositorio de Docker. Luego, puede instalar y actualizar Docker desde el repositorio.

Instalemos los siguientes paquetes para permitir que apt use un repositorio sobre HTTPS:

sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg \
    lsb-release

Agregue la clave GPG oficial de Docker:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

Use el siguiente comando para configurar el repositorio estable.

echo \
  "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Instalar el motor Docker

Actualice el índice del paquete apt ya que agregamos un nuevo repositorio:

sudo apt-get update

Ahora instalemos la última versión de Docker Engine y containerd usi

sudo apt-get install -y docker-ce docker-ce-cli containerd.io

Opcional:Instalación de una versión específica

Si tiene requisitos que requieren una versión específica, puede hacerlo.

Para instalar una versión específica:
Enumere las versiones disponibles en su repositorio:

$ sudo apt-cache madison docker-ce
 docker-ce | 5:20.10.9~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
 docker-ce | 5:20.10.8~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
 docker-ce | 5:20.10.7~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
 docker-ce | 5:20.10.6~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
 docker-ce | 5:20.10.5~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
 docker-ce | 5:20.10.4~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
 docker-ce | 5:20.10.3~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
 docker-ce | 5:20.10.2~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
 docker-ce | 5:20.10.1~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
 docker-ce | 5:20.10.0~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
 docker-ce | 5:19.03.15~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
 docker-ce | 5:19.03.14~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
 docker-ce | 5:19.03.13~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
 docker-ce | 5:19.03.12~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
 docker-ce | 5:19.03.11~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
 docker-ce | 5:19.03.10~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
 docker-ce | 5:19.03.9~3-0~ubuntu-focal | https://download.docker.com/linux/ubuntu focal/stable amd64 Packages

Ahora puede instalar una versión específica usando la cadena de versión de la segunda columna, por ejemplo, 5:19.03.9~3-0~ubuntu-focal .

sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io

Ejemplo:

sudo apt-get install docker-ce=5:19.03.9~3-0 docker-ce-cli=5:19.03.9~3-0 containerd.io

4. Instale el motor docker desde un paquete

Si no puede usar el repositorio de Docker para instalar Docker Engine, puede descargar el archivo .deb para su versión e instalarlo manualmente. Debe descargar un archivo nuevo cada vez que desee actualizar Docker.

Vaya a https://download.docker.com/linux/ubuntu/dists/, elija su versión de Ubuntu, luego busque pool/stable/ , elige amd64 , armhf , o arm64 y descargue el archivo .deb para la versión de Docker Engine que desea instalar.

Instale Docker Engine, cambiando la ruta a continuación a la ruta donde descargó el paquete de Docker.

 sudo dpkg -i /path/to/package.deb

El demonio Docker se inicia automáticamente.

Verifique que Docker Engine esté instalado correctamente ejecutando la imagen hello-world.

sudo docker run hello-world

Este comando descarga una imagen de prueba y la ejecuta en un contenedor. Cuando se ejecuta el contenedor, imprime un mensaje informativo y sale.

5. Instalar usando el script de conveniencia

Docker proporciona una secuencia de comandos conveniente en get.docker.com para instalar Docker en entornos de desarrollo de forma rápida y no interactiva.

Este ejemplo descarga el script de get.docker.com y lo ejecuta para instalar la última versión estable de Docker en Linux:

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

6. Verificar instalación

Tras la instalación, Docker se ejecutará como un demonio. Para verificar que la ventana acoplable se está ejecutando, usamos la ventana acoplable systemctl status docker comando:

$ sudo systemctl status docker
● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2021-10-08 05:35:57 UTC; 3min 50s ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 146750 (dockerd)
      Tasks: 8
     Memory: 30.0M
     CGroup: /system.slice/docker.service
             └─146750 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

Oct 08 05:35:57 ip-172-26-11-229 dockerd[146750]: time="2021-10-08T05:35:57.378859538Z" level=warning msg="Your kernel does not support CPU r>
Oct 08 05:35:57 ip-172-26-11-229 dockerd[146750]: time="2021-10-08T05:35:57.378869630Z" level=warning msg="Your kernel does not support cgrou>
Oct 08 05:35:57 ip-172-26-11-229 dockerd[146750]: time="2021-10-08T05:35:57.378877385Z" level=warning msg="Your kernel does not support cgrou>
Oct 08 05:35:57 ip-172-26-11-229 dockerd[146750]: time="2021-10-08T05:35:57.379112713Z" level=info msg="Loading containers: start."
Oct 08 05:35:57 ip-172-26-11-229 dockerd[146750]: time="2021-10-08T05:35:57.500736755Z" level=info msg="Default bridge (docker0) is assigned >
Oct 08 05:35:57 ip-172-26-11-229 dockerd[146750]: time="2021-10-08T05:35:57.560469239Z" level=info msg="Loading containers: done."

El Active: active (running) muestra que la ventana acoplable se inició con éxito.

Podemos ejecutar un hello-world imagen para probar que la ventana acoplable funciona como se esperaba:

 sudo docker run hello-world

Este comando descarga una imagen de prueba y la ejecuta en un contenedor. Cuando se ejecuta el contenedor, imprime un mensaje informativo y sale.

Obtuve este resultado, mostrando que funciona bien:

$ sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
2db29710123e: Pull complete
Digest: sha256:9ade9cc2e26189a19c2e8854b9c8f1e14829b51c55a630ee675a5a9540ef6ccf
Status: Downloaded newer image for hello-world:latest

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

7. Ejecutar el comando Docker sin Sudo

De forma predeterminada, el comando docker solo puede ejecutarlo el usuario raíz o un usuario del grupo docker, que se crea automáticamente durante el proceso de instalación de Docker. Si intenta ejecutar el comando docker sin el prefijo sudo o sin estar en el grupo docker, obtendrá un resultado como este:

$ docker ps
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json": dial unix /var/run/docker.sock: connect: permission denied

Si desea evitar escribir sudo cada vez que ejecuta el comando docker, agregue su nombre de usuario al grupo docker:

sudo usermod -aG docker ${USER}

Para aplicar la nueva pertenencia al grupo, cierre sesión en el servidor y vuelva a iniciarla, o escriba lo siguiente:

su - ${USER}

Se le pedirá que ingrese su contraseña de usuario para continuar.

Confirme que su usuario ahora está agregado al grupo docker escribiendo:

id -nG

Veo esto, confirmando que ahora pertenezco al grupo docker

$ id -nG
ubuntu docker

Ahora puedo hacer docker:
Puedo ejecutar una imagen alpina

$ docker run --rm -it --name alpine --entrypoint /bin/sh alpine:3
Unable to find image 'alpine:3' locally
3: Pulling from library/alpine
a0d0a0d46f8b: Pull complete
Digest: sha256:e1c082e3d3c45cccac829840a25941e679c25d438cc8412c2fa221cf1a824e6a
Status: Downloaded newer image for alpine:3
/ #

¡Hemos instalado Docker con éxito en nuestro sistema!

8. Desinstalar Docker cuando ya no se necesita

Para borrar completamente el motor Docker del sistema, debemos desinstalar los paquetes Docker Engine, CLI y Containerd:

 sudo apt-get purge docker-ce docker-ce-cli containerd.io -y

Las imágenes, los contenedores, los volúmenes o los archivos de configuración personalizados de su host no se eliminan automáticamente. Para eliminar todas las imágenes, contenedores y volúmenes:

 sudo rm -rf /var/lib/docker
 sudo rm -rf /var/lib/containerd

Debe eliminar cualquier archivo de configuración editado manualmente.

Conclusión

En esta guía, logramos instalar Docker en nuestro sistema Ubuntu 20.04.


Ubuntu
  1. Cómo instalar y usar Docker en Ubuntu 20.04

  2. Cómo instalar y usar Wine en Ubuntu 20.04

  3. Cómo instalar y usar Docker en Ubuntu 18.04

  4. Cómo instalar y usar Docker Compose en Ubuntu 18.04

  5. Cómo instalar y usar FFmpeg en Ubuntu 18.04

Cómo instalar y usar R en Ubuntu

Cómo instalar y usar vnStat en Ubuntu 21.04

Cómo instalar y usar Docker Compose en Ubuntu 20.04

Cómo instalar y usar Docker Compose en Ubuntu 22.04

Cómo instalar y usar Docker en Ubuntu 22.04

Cómo instalar y usar Docker en Ubuntu 20.04