El día de hoy vamos a instalar Docker en una Raspberry Pi 3B ejecutando Ubuntu 18.04.
Primero deshabilitaremos la memoría swap de la Raspberry Pi
root# swapoff -a
A continuación indicaremos al Sistema Operativo que enforce los controlgroups para limitar el uso de recursos de los contenedores.
root# sed -i -e 's/fixrtc/fixrtc cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory/g' /boot/firmware/nobtcmd.txt
Para que se apliquen los cambios reiniciaremos nuestra Raspberry Pi
root# reboot
Una vez que se haya reiniciado la Raspberry Pi añadiremos la llave pública del repositorio de Docker
root# curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
Ahora agregamos el repositorio a la lista de repositorios disponibles en el sistema
root# add-apt-repository "deb [arch=arm64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
Actualizamos la lista de paquetes disponibles e instalamos Docker
root# apt-get update && apt-get install -y docker-ce
Docker se encuentra listo para su uso, como mejor práctica añadiremos nuestro usuario al grupo docker para poder crear contenedores sin ser root. Antes de ejecutar el comando no olvidemos reemplazar $USUARIO con el nombre de usuario con el que accedemos a nuestra Raspberry Pi
root# usermod -aG docker $USUARIO
Para que se apliquen los cambios, cerraremos la sesión actual. Podemos cerrar la sesión o cerrar y abrir la terminal de nuevo.
Comprobaremos que Docker funcione de manera correcta, haciendo un pull de la imagen nginx y ejecutaremos un contenedor que use esta imagen.
usuario$ docker image pull nginx
usuario$ docker container run --name webserver -d -p 5000:80 nginx
Comprobarémos que el contenedor ha sido creado de forma exitosa realizando una petición
usuario$ curl localhost:5000
La respuesta del comando curl debe mostrarnos la página inicio de Nginx