Introducción
Docker es una plataforma de contenedorización que le permite crear, probar e implementar rápidamente aplicaciones como contenedores portátiles e independientes que pueden ejecutarse prácticamente en cualquier lugar.
En este tutorial, explicaremos cómo instalar Docker en Raspberry Pi y exploraremos los conceptos y comandos básicos de Docker.
Prerrequisitos
Suponemos que Raspbian está instalado en su Raspberry Pi. Docker no necesita una interfaz gráfica y es mejor usar la imagen Raspbian Stretch Lite y habilitar SSH. De esta manera, su Raspberry Pi tendrá mucha más potencia de procesamiento y memoria disponible para ejecutar contenedores Docker.
Instalar Docker en Raspberry Pi
La instalación de Docker en la Raspberry Pi es solo cuestión de ejecutar algunos comandos.
Primero, descargue el script de instalación de Docker usando el siguiente comando curl:
curl -fsSL https://get.docker.com -o get-docker.sh
Una vez que se complete la descarga, ejecute el script escribiendo:
sh get-docker.sh
El script detectará la distribución de Linux, instalará los paquetes necesarios e iniciará Docker.
El proceso puede tardar unos minutos y, cuando finalice, el script generará información sobre la versión de Docker y cómo utilizar Docker como usuario no root.
Eso es todo. Docker se ha instalado en su tarjeta Pi.
Ejecutando el comando de Docker sin Sudo
De forma predeterminada, solo un usuario con privilegios de administrador puede ejecutar comandos de Docker.
Para ejecutar comandos de Docker como usuario no root sin anteponer sudo
debe agregar el usuario al grupo de Docker creado durante la instalación. Para hacerlo por tipo:
sudo usermod -aG docker $USER
$USER
es una variable de entorno que contiene su nombre de usuario.
Cierre la sesión y vuelva a iniciarla para actualizar la pertenencia al grupo.
Para verificar que puede ejecutar comandos sudo
ejecute el siguiente comando que descargará una imagen de prueba, la ejecutará en un contenedor, imprimirá un mensaje "Hola desde Docker" y saldrá:
docker container run hello-world
Cómo utilizar Docker
Ahora que Docker está configurado en su Raspberry Pi, repasemos los conceptos y comandos básicos de Docker.
Una imagen de Docker se compone de una serie de capas del sistema de archivos que representan instrucciones en la imagen de Dockerfile que componen una aplicación de software ejecutable. Una imagen es un archivo binario inmutable que incluye la aplicación y todas las demás dependencias, como bibliotecas, binarios e instrucciones necesarias para ejecutar la aplicación.
La mayoría de las imágenes de Docker están disponibles en Docker Hub. Es un servicio de registro basado en la nube que, entre otras características, se utiliza para mantener las imágenes de Docker en un repositorio público o privado.
Para buscar una imagen en el registro de Docker Hub, use el comando de docker search
Por ejemplo, para buscar una imagen de Debian, escriba:
docker search debian
Contenedores Docker
Una instancia de una imagen se llama contenedor. Un contenedor representa un tiempo de ejecución para una sola aplicación, proceso o servicio.
Puede que no sea la comparación más apropiada, pero si es un programador, puede pensar en una imagen de Docker como una clase y un contenedor de Docker como una instancia de una clase.
Para iniciar, detener, eliminar y administrar un contenedor, use el comando docker container
Por ejemplo, el siguiente comando iniciará un contenedor Docker basado en la imagen de Debian. Si la imagen no está presente localmente, se descargará primero:
docker container run debian
El contenedor Debian se detendrá inmediatamente después del inicio porque no tiene un proceso de ejecución prolongada y no se dan otros comandos. El contenedor arrancó, ejecutó un comando vacío y luego salió.
La -it
permite interactuar con el contenedor a través de la línea de comando. Para iniciar un tipo de contenedor interactivo:
docker container run -it debian /bin/bash
root@ee67tfc65c8c:/#
Como puede ver en el resultado anterior, una vez que se inicia el contenedor, el símbolo del sistema cambia, lo que significa que ahora está trabajando desde dentro del contenedor.
Para enumerar los contenedores Docker en ejecución, use el siguiente comando:
docker container ls
Si no tiene ningún contenedor en ejecución, la salida estará en blanco.
Para ver todos los contenedores, use la opción -a
docker container ls -a
Para eliminar uno o más contenedores, simplemente copie el ID del contenedor (o ID) y péguelos después del comando container rm
docker container rm c66980v5665r
Conclusión
Aprendió cómo instalar Docker en su computadora Raspberry Pi y cómo ejecutar contenedores Docker. Para obtener más información sobre este tema, consulte la documentación oficial de Docker.