Instalación de Docker CE en Linux Ubuntu utilizando el repositorio

Introducción

A continuación se describe el proceso de instalación de Docker para la gestión de contenedores de software bajo Ubuntu y Linux Mint.

Agregar el repositorio oficial de Docker

Instalar los paquetes necesarios para permitir el uso de repositorios a través de HTTPS.

$ sudo apt-get install apt-transport-https ca-certificates curl software-properties-common

Agregar la llave GPG del repositorio oficial de Docker.

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Por seguridad, verificar que la firma (fingerprint) sea 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88.

$ sudo apt-key fingerprint 0EBFCD88

Agregar el repositorio mediante la siguiente instrucción para una distribución de 64 bits de Ubuntu.

$ sudo add-apt-repository \
 "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
 $(lsb_release -cs) \
 stable"

Si se utiliza Linux Mint (derivada de Ubuntu), la respuesta del comando lsb_release -cs será la versión de Mint no de Ubuntu, por este motivo será necesario ajustarla manualmente.  En este caso se utilizó Linux Mint 18.2 (Sonya) el cual está basado en Ubuntu 16.04.2 LTS (Xenial Xerus).

$ sudo add-apt-repository \
 "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
 xenial \
 stable"

Finalmente, se actualizan los índices de los paquetes para que sea tomado en cuenta este nuevo repositorio.

$ sudo apt-get update

Instalar el software

Una vez listo el repositorio oficial, se procede a instalar el software en el servidor.

En caso de que se desee instalar la última versión disponible se deberá ejecutar el siguiente comando.

$ sudo apt-get install docker-ce

En un servidor en producción probablemente no se desee instalar la última versión disponible sino una versión suficientemente estable y probada.  Para esto se puede utilizar el siguiente comando para determinar cuales versiones de Docker se encuentran disponibles en el repositorio.

$ apt-cache madison docker-ce

Para finalmente instalar la versión específica elegida del listado anterior.

$ sudo apt-get install docker-ce=<VERSION>

Por defecto, el servicio el servicio de Docker se inicia automáticamente con Upstart, para deshabilitar este comportamiento se debe ejecutar el siguiente comando.  Esto probablemente sea interesante en equipos de desarrollo en los cuales no es necesario contar con el demonio de Docker todo el tiempo.

$ echo manual | sudo tee /etc/init/docker.override

Probar la instalación

$ sudo docker run hello-world

Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
b04784fba78d: Pull complete 
Digest: sha256:f3b3b28a45160805bb16542c9531888519430e9e6d6ffc09d72261b0d26ff74f
Status: Downloaded newer image for hello-world:latest

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.
 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://cloud.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/engine/userguide/

Desinstalar el software

$ sudo apt-get purge docker-ce

Debe tenerse en cuenta que el comando anterior sólo desinstala el software instalado en este mismo artículo, el resto de los recursos (imágenes, contenedores, volúmenes, archivos de configuración, etc.) no serán removidos automáticamente.  Estos por defecto se ubican bajo /var/lib/docker.

Recursos

  1. Get Docker CE for Ubuntu
    https://docs.docker.com/engine/installation/linux/docker-ce/ubuntu/
  2. Docker Engine user guide
    https://docs.docker.com/engine/userguide/
  3. Post-installation steps for Linux
    https://docs.docker.com/engine/installation/linux/linux-postinstall/

Leave a Reply