Instalar Docker en Ubuntu y Linux Mint


En esta guía te mostraremos cómo instalar Docker en Ubuntu Server 20.04. Si estás corriendo otra distribución, visita la documentación oficial de Docker en este enlace.

Dependiendo del sistema operativo utilizado, realizar la instalación de Docker y docker-compose (sólo Linux)

  • Windows
  • MacOS
  • Linux (CentOS, Debian, Ubuntu, Fedora).

Instalación en CentOS 7+

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

sudo yum install docker-ce

sudo systemctl start docker


Instalación en Ubuntu 16.04+

sudo apt-get update

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

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

sudo apt-get install docker-ce






Ubuntu(todas las versiones)

sudo apt-get update

 

 

Post-instalación (sólo Linux)

Docker-compose En sistemas Linux, es necesario instalar docker-compose adicionalmente:

sudo curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose

Identificamos la versión de docker-compose para verificar su funcionamiento.

docker-compose --version

Finalmente, se crea un grupo docker y se agrega el usuario actual para poder ejecutar comandos sin necesidad de ser usuario root.

```
sudo groupadd docker

sudo usermod -aG docker $USER
```

Reiniciamos la sesión en el sistema. En caso de utilizar una máquina virtual es necesario reiniciarla para que los cambios surtan efecto.

Si la instalación se realizó correctamente, ejecutamos el siguiente comando para levantar el contenedor hello-world: docker run hello-world

El resultado indica los pasos que se realizaron para descargar la imagen hello-world y desplegarla en un contenedor:

Despliegue de servicios

Una vez finalizada la instalación de Docker, podemos realizar el despliegue de los contenedores de forma sencilla mediante la definición de un archivo en formato yaml que contiene la información necesaria para su configuración.

Asuntos a tener en cuenta luego de instalar Docker

Docker está pensado para ser usado a nivel usuario y no es recomendable usarlo como root. Es por eso que si no tienes un usuario para correr Docker, te propondremos crear uno y agregarlo a los grupos de usuario correspondiente.

Te mostramos aquí cómo hacerlo:

Recuerda reemplazar USUARIO por el usuario real que estés creando en sistema.

  1. Crea el usuario.
    adduser USUARIO
  2. Agrégalo ahora a los grupos de sudo y Docker.
    usermod -aG sudo USUARIO
    usermod -aG docker USUARIO
  3. Toma control de la consola con el nuevo usuario.
    su USUARIO
  4. Intenta correr el «hola mundo» con el usuario para ver si todo va bien.
    sudo docker run hello-world

Ejemplo: Cómo desplegar una instancia de «ubuntu» dentro de un servidor

Parece redundante, pero creando un contenedor de un sistema operativo te será útil para realizar pruebas de configuración sin comprometer el sistema operativo de tu servidor.

  1. Accede a tu consola de comandos SSH con el usuario que acabas de crear.
  2. Descargamos la imagen (en este ejemplo se usará «ubuntu»).
    docker pull ubuntu
  3. Crea el contenedor.
    docker run ubuntu
  4. Lista los contenedores y copia el ID.
    docker ps -a
    CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
    5eb116713b8b ubuntu «/bin/bash» 31 minutes ago Up 24 seconds hopeful_babbage
  5. Enciende el contenedor.
    docker start 5eb116713b8b
  6. Conéctate al contenedor.
    docker attach 5eb116713b8b
  7. Dentro del contenedor, actualizamos los paquetes.
    root@5eb116713b8b:/# apt update && apt upgrade
  8. Instala y configura lo que necesites.
  9. Al terminar de trabajar podrás salir del contenedor, y este se apagará. Para encenderlo, vuelve a correr el comando del paso 5.
    root@5eb116713b8b:/# exit

Ejemplo: Cómo instalar un contenedor Docker de WordPress

Este ejemplo muestra cómo correr un contenedor WordPress en un solo comando.

  1. Logueado en la consola de comandos SSH de tu servidor, ejecuta este comando.
    docker run -p 8888:80 wordpress 8888 será el puerto público donde correrá el contenedor web de WordPress. Si el servidor de base no está usando el puerto 80 o 443 (SSL), podrás publicarlo allí sin problema.
  2. Al finalizar verás una salida de comando como esta.
    Unable to find image ‘wordpress:latest’ locally
    latest: Pulling from library/wordpress
    a409b57eb464: Pull complete
    Digest: sha256:6da8f886b20632dd05eeb22462f850a38e30600cedd894d2c6b1eb1a58e9763c
    Status: Downloaded newer image for wordpress:latest
    WordPress not found in /var/www/html – copying now…
    Complete! WordPress has been successfully copied to /var/www/html
    AH00558: apache2: Could not reliably determine the server’s fully qualified domain name, using 172.17.0.2. Set the ‘ServerName’ directive globally to suppress this message
    AH00558: apache2: Could not reliably determine the server’s fully qualified domain name, using 172.17.0.2. Set the ‘ServerName’ directive globally to suppress this message
    [Thu Aug 20 19:10:04.642828 2020] [mpm_prefork:notice] [pid 1] AH00163: Apache/2.4.38 (Debian) PHP/7.4.9 configured — resuming normal operations
    [Thu Aug 20 19:10:04.642877 2020] [core:notice] [pid 1] AH00094: Command line: ‘apache2 -D FOREGROUND’
  3. Ahora ya puedes ingresar por navegador y configurar WordPress.

Generación manual de una clave SSH en Windows


En Windows se puede crear claves SSH de muchas formas. En este post debería aclaranos un poco como utilizar dos aplicaciones SSH, PuTTY y Git Bash .

Muchos proveedores recomiendan claves RSA porque los programas CLI de node-manta funcionan con claves RSA tanto localmente como con el agente ssh y las claves DSA solo funcionarán si la clave privada está en el mismo sistema que la CLI y no está protegida por contraseña.

Putty

PuTTY es un cliente SSH para Windows. Puede utilizar PuTTY para generar claves SSH. PuTTY es un emulador de terminal de código abierto gratuito que funciona de manera muy similar a la aplicación Terminal en macOS en un entorno Windows. Esta sección le muestra cómo generar y cargar manualmente una clave SSH cuando trabaja con PuTTY en el entorno de Windows.

 PuTTY es un cliente SSH para Windows que utilizará para generar sus claves SSH. Puede descargar PuTTY desde www.chiark.greenend.org.uk .

Cuando instala el cliente PuTTY, también instala la utilidad PuTTYgen. PuTTYgen es lo que usará para generar su clave SSH para una VM de Windows.

Generando una clave SSH

Para generar una clave SSH con PuTTYgen, siga estos pasos:

  1. Abra el programa PuTTYgen.
  2. Para Tipo de clave a generar , seleccione SSH-2 RSA .
  3. Haga clic en el botón Generar .
  4. Mueva el mouse en el área debajo de la barra de progreso. Cuando la barra de progreso está llena, PuTTYgen genera su par de claves.
  5. Escriba una frase de contraseña en el campo Frase de contraseña de clave . Escriba la misma contraseña en el campo Confirmar contraseña . Puede utilizar una clave sin una frase de contraseña, pero no se recomienda.
  6. Haga clic en el botón Guardar clave privada para guardar la clave privada. Usted debe guardar la clave privada. Lo necesitará para conectarse a su máquina.
  7. Haga clic con el botón derecho en el campo de texto etiquetado como Clave pública para pegar en el archivo de claves autorizadas de OpenSSH y elija Seleccionar todo .
  8. Vuelva a hacer clic derecho en el mismo campo de texto y elija Copiar .

Importando su clave SSH

Ahora debe importar la clave SSH copiada al portal.

  1. Después de copiar la clave SSH al portapapeles, regrese a la página de su cuenta de su proveedor .
  2. Elija Importar clave pública y pegue su clave SSH en el campo Clave pública.
  3. En el campo Nombre de clave , proporcione un nombre para la clave. Nota : aunque proporcionar un nombre de clave es opcional, es una buena práctica para facilitar la administración de varias claves SSH.
  4. Agrega la clave. Ahora aparecerá en su tabla de claves bajo SSH.

PuTTY y OpenSSH usan diferentes formatos de claves SSH públicas. Si el texto que pegó en la clave SSH comienza con —— BEGIN SSH2 PUBLIC KEY, está en el formato incorrecto. Asegúrese de seguir las instrucciones cuidadosamente. Tu clave debe comenzar con ssh-rsa AAAA….

Una vez que cargue su clave SSH en el portal, puede conectarse a su máquina virtual desde Windows a través de una sesión PuTTY.

Git Bash

El paquete de instalación de Git viene con SSH. Con Git Bash, que es la herramienta de línea de comandos de Git, puede generar pares de claves SSH. Git Bash tiene un cliente SSH que le permite conectarse e interactuar con los contenedores de Triton en Windows.

Para instalar Git:

  1. (Descargue e inicie el instalador de Git] ( https://git-scm.com/download/win ).
  2. Cuando se le solicite, acepte los componentes predeterminados haciendo clic en Siguiente .
  3. Elija el editor de texto predeterminado. Si tiene Notepad ++ instalado, seleccione Notepad ++ y haga clic en Siguiente .
  4. Seleccione Usar Git en el símbolo del sistema de Windows y haga clic en Siguiente .
  5. Seleccione Usar la biblioteca OpenSSL y haga clic en Siguiente .
  6. Seleccione Checkout Windows-style, confirme los finales de línea de estilo Unix y haga clic en Siguiente .
  7. Seleccione Usar MinTTY (el terminal predeterminado de mYSYS2) y haga clic en Siguiente .
  8. Acepte la configuración de opción adicional predeterminada haciendo clic en Instalar .

Cuando se complete la instalación, es posible que deba reiniciar Windows.

Lanzamiento de GitBash

Para abrir Git Bash, recomendamos iniciar la aplicación desde el símbolo del sistema de Windows:

  1. En Windows, presione Inicio + R para abrir el cuadro de diálogo Ejecutar .
  2. Escribe C:\Program Files\Git\bin\bash.exey presiona Enter .

Generando claves SSH

Primero, cree el directorio SSH y luego genere el par de claves SSH.

Una suposición es que el perfil de Windows que está utilizando está configurado con privilegios administrativos. Dado esto, creará el directorio SSH en la raíz de su perfil, por ejemplo:

C:\Users\joetest
  1. En la línea de comando de Git Bash, cambie a su directorio raíz y escriba.
mkdir .ssh
  1. Cambie al directorio .ssh C:\Users\joetest\.ssh
  2. Para crear las claves, escriba:
ssh-keygen.exe
  1. Cuando se le solicite una contraseña, escriba una contraseña para completar el proceso. Cuando termine, el resultado será similar a:
Ssh-keygen.exe
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/joetest/.ssh/id_rsa): /c/Users/joetest/.ssh/
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/joetest/.ssh/
Your public key has been saved in /c/Users/joetest/.ssh/
The key fingerprint is:
SHA256:jieniOIn20935n0awtn04n002HqEIOnTIOnevHzaI5nak joetest@periwinkle
The key's randomart image is:

 +---[RSA 2048]----+
 |*= =+.           |
 |O*=.B            |
 |+*o* +           |
 |o +o.  .         |
 | ooo  + S        |
 | .o.ooo* o       |
 |  .+o+*oo .      |
 |   .=+..         |
 |   Eo            |
 +----[SHA256]-----+

$ dir .ssh
id_rsa  id_rsa.pub   

Subiendo una clave SSH

Para cargar la clave SSH pública en su cuenta de  su proveedor :

  1. Abra el portal del servicio , seleccione Cuenta para abrir la página Resumen de cuenta .
  2. En la sección SSH , seleccione Importar clave pública .
  3. Ingrese un nombre de clave . Aunque nombrar una clave es opcional, las etiquetas son una práctica recomendada para administrar varias claves SSH.
  4. Agrega tu clave SSH pública.

Cuando Triton finaliza el proceso de agregar o cargar, la clave SSH pública aparece en la lista de claves SSH.