Para los contenedores Docker, Alpine Linux es una opción óptima debido al bajo consumo y optimización livianos de RAM. Sin embargo, sin embargo, Ubuntu es el mejor.
Alpine Linux es un sistema operativo Linux gratuito y de código abierto para enrutadores, firewalls, VPN, computadoras VoIP, servidores, máquinas virtuales y contenedores. Tiene características de seguridad proactivas que evitan que se exploten los agujeros de seguridad en el software. La pequeña distribución de Linux liviana basada en Musl LibC y BusyBox.
Pasos para instalar Docker en Alpine Linux
No voy a hablar mucho en Docker aquí porque si estás leyendo este tutorial, ya sabrías qué es. Bueno, en Short Docker es una plataforma de virtualización contenedorizada que permite ejecutar diferentes máquinas virtuales en forma de contenedores aislados. Lo mejor de esto, liviano y fácil de manejar; Simplemente se puede extraer imágenes de Linux o Apps existentes para configurar un contenedor de Hub.docker.com.
Paso 1: Descargar y configurar Alpine Linux
Si ya tiene un Alpine Linux en funcionamiento, simplemente muévase al siguiente paso y, si no, vaya a estoenlace y descarga uno. Alpine Linux está disponible en múltiples formas, como estándar, extendido con algunos paquetes adicionales, instalación de red, imagen ISO virtual optimizada, para XEN con soporte incorporado para XEN Hypervisor y en un sistema de archivos raíz mínimo para contenedores. Puede descargar uno según su elección, sin embargo, aquí estamos utilizando Alpine Linux Extended versión 3.11.
Después de descargar, arranca su PC o VirtualBox con ella y ejecute el comandosetup-alpine
Para seguir los pasos de instalación.
Paso 2: Comando para instalar Docker en Alpine
Ejecute el siguiente comando único para obtener paquetes Docker para su instalación en Alpine.
apk add docker
Paso 3: APK ADD falla con un error de restricciones insatisfactorias
En caso de ejecutar el comando anterior, recibe un error "APK ADD falla con restricciones insatisfactorias"Entonces tenemos que agregar el siguiente repositorio a Alpine.
Edite el archivo del repositorio alpino:
vi /etc/apk/repositories
Luego presionaInsertarBotón en el teclado y agregue la siguiente línea en el archivo.
https://dl-cdn.alpinelinux.org/alpine/latest-stable/community
Para guardar y salir primero presioneESCy luego escriba:wq
Después de eso, presione elIngresarbotón.
Una vez que haya terminado, ejecute el comando de actualización del paquete para informar el sistema sobre el repositorio actualizado, para que pueda indexar lo mismo.
apk update
Paso 4: Agregar servicio Docker al nivel de arranque del sistema
Para asegurarse de que el servicio de Docker se inicie automáticamente cada vez junto con el arranque del Alpine, tenemos que agregarlo a nuestros servicios del sistema.
rc-update add docker boot
Ahora podemos iniciar el servicio Docker
service docker start
Paso 5: Instalar Docker Compose
Los usuarios que también desean la composición de Docker en Alpine, primero, tienen que instalar PIP.
apk add py-pip
Pocas dependencias de Dev
apk add python-dev libffi-dev openssl-dev gcc libc-dev make
Finalmente, ejecute el comando para instalar Docker-Compose
pip install docker-compose
Paso 6: aislar contenedores con un espacio de nombres de usuarios
adduser -SDHs /sbin/nologin dockremap addgroup -S dockremap echo dockremap:$(cat /etc/passwd|grep dockremap|cut -d: -f3):65536 >> /etc/subuid echo dockremap:$(cat /etc/passwd|grep dockremap|cut -d: -f4):65536 >> /etc/subgid
Paso 7: Ahora, consulte su instalación de Docker
Use el siguiente comando para verificar la información de la versión Docker instalada.
docker info
Paso 8 Pull Docker Imagen en Alpine
Para saber que todo funciona bien, saquemos una imagen de Hello-World
docker pull hello-world
Para ejecutar la imagen:
docker run -t hello-world
Adicional: errores que encontramos al configurarlo
1: Respuesta de error de Daemon https //registry-1.docker.io/v2/ Time Out
Recibimos el error anterior porque en el resolv.conf de alpino los servidores de nombres no se configuraron adecuadamente, por lo tanto, lo editamos:
vi /etc/resolv.conf
Y agregó los siguientes servidores de nombres:
nameserver 8.8.8.8 nameserver 8.8.4.4
2.Después de instalar el Alpine, la red no era posible, por lo tanto, editamos:
vi /etc/network/interfaces
Y agregó lo siguiente:
auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp
De esta manera, podemos usar este Linux alpino ligero para Docker que ejecuta máquinas virtuales contenedores.