Debian

Crear automáticamente imágenes de Docker en Debian 10 (Buster)

Crear automáticamente imágenes de Docker en Debian 10 (Buster)

Docker es una tecnología bajo demanda en estos días, ya que muchas grandes empresas la utilizan para reducir sus cargas de trabajo. Se utiliza para crear, empaquetar e implementar aplicaciones además de la tecnología de contenedores. Docker puede ejecutar una aplicación de alta utilización de recursos con un uso mínimo de recursos. La virtualización basada en hipervisor requiere muchos recursos al instalar un sistema operativo completo, mientras que Docker usa contenedores muy livianos y escalables para ejecutar aplicaciones.

Docker se puede instalar en Linux, Mac y Windows. Aunque se ejecuta de forma nativa en Linux, requiere que Hyper-V esté habilitado en Windows.

Docker también tiene un Docker Hub, un servicio basado en la nube donde podemos encontrar imágenes de editores verificados, y también podemos publicar y compartir nuestras propias imágenes personalizadas.  Una vez que hemos extraído una imagen de Docker Hub, podemos crear numerosos contenedores a partir de la misma imagen.

Características de Docker:

  1. Es un software de código abierto.
  2. Proporciona plataforma como servicio para ejecutar aplicaciones en un entorno virtual.
  3. Es muy fácil de entender y utilizar la tecnología Docker.
  4. Las aplicaciones de Docker se pueden mover y ejecutar fácilmente en cualquier sistema que tenga Docker instalado.
  5. La migración de contenedores Docker es muy rápida desde el entorno de la nube a localhost y viceversa.

Docker puede leer y ejecutar las instrucciones dentro del Dockerfile y generar automáticamente la imagen especificada. Esta guía verá cómo podemos construir automáticamente una imagen de Docker usando un Dockerfile en el sistema operativo Debian 10 (Buster). Implementaremos el servidor web Nginx y crearemos una imagen Docker personalizada.

Requisitos previos:

  1. Acceso a privilegios de "sudo".
  2. Conocimiento básico de los comandos de Docker.

Antes de comenzar nuestro viaje, repasemos rápidamente algunos conceptos y requisitos importantes que son necesarios para comprender esta guía. Lo primero es que debería tener Docker instalado en su sistema. Si aún no lo ha hecho, puede seguir esta guía para instalar Docker. También puede utilizar la guía oficial disponible en el sitio web de Docker para instalar Docker en Debian 10.

  1. Dockerfile: Este archivo describe toda la configuración que queremos tener en nuestro contenedor Docker. Es un conjunto de instrucciones que define cómo construir una imagen.
  2. Imagen de Docker: En realidad, es la imagen de plantilla que podemos usar para construir nuestro contenedor personalizado. Podemos decir que una imagen de la ventana acoplable es un archivo inmutable o una imagen de solo lectura.
  3. Contenedor Docker: En palabras muy simples, un contenedor de Docker es una instancia de nuestra imagen de Docker. Podemos decir que la imagen de Docker es una imagen base y creamos un contenedor personalizado en la parte superior de una imagen de Docker agregando una capa de escritura en esta imagen.  Podemos usar una sola imagen de Docker para crear múltiples contenedores de Docker.

Espero que esta revisión sea suficiente para que podamos comenzar con Docker. Así que profundicemos para ver cómo crear imágenes usando Dockerfile automáticamente.

Paso 1: el primer paso para crear una imagen comienza con un archivo de ventana acoplable. Entonces, primero creemos un directorio de trabajo, y dentro de él, crearemos un Dockerfile.

$ mkdir mydock1 # Esto crea un nuevo directorio.
$ nano Dockerfile # Este es nuestro dockerfile.

Podemos usar cualquier editor de texto además de nano como vi o vim.

Paso 2. Agregue el siguiente contenido al Dockerfile y guárdelo.

DESDE ubuntu
MANTENIMIENTO linuxhint
EJECUTAR apt-get update \
&& apt-get install -y nginx \
&& apt-get clean \
&& rm -rf / var / lib / apt / lists / * / tmp / * / var / tmp / * \
&& echo "demonio desactivado;" >> / etc / nginx / nginx.conf
EXPONER 80
Inicio de nginx del servicio CMD

Paso 3. Ahora, cuando tenemos nuestro Dockerfile listo, es hora de construir la imagen. Simplemente use el siguiente comando:

$ sudo docker build -t webserver-image: v1 .

Sintaxis:

sudo docker build -t nombre: etiqueta / ruta / a / directorio / de / dockerfile

Nota: Ejecute siempre el comando de Docker con privilegios de usuario root o "sudo" para evitar el error: "Obtuve permiso denegado mientras intentaba conectarse al socket del demonio de Docker en unix: /// var / run / docker"

En el comando anterior, la imagen del servidor web es el nombre de nuestra imagen de la ventana acoplable. Puedes usar tu nombre personalizado aquí. V1 es la etiqueta de nuestra imagen.

Si todo va bien, deberíamos ver el siguiente resultado:

Envío de contexto de compilación al demonio 2 de Docker.048kB

Paso 1/5: DESDE ubuntu

-> f643c72bc252

Paso 2/5: MANTENIMIENTO linuxhint

-> Usando caché

-> 1edea6faff0d

Paso 3/5: EJECUTE apt-get update && apt-get install -y nginx && apt-get clean && rm -rf / var / lib / apt / lists / * / tmp / * / var / tmp / * && echo " daemon off; " >> / etc / nginx / nginx.conf

-> Usando caché

-> 81398a98cf92

Paso 4/5: EXPONER 80

-> Usando caché

-> 2f49ffec5ca2

Paso 5/5: inicio de nginx del servicio CMD

-> Usando caché

-> 855796a41bd6

855796a41bd6 construido con éxito

Imagen de servidor web etiquetada correctamente: v1


Paso 4. Cuando tenemos varias imágenes, podemos usar el siguiente comando para buscar una imagen específica:

$ sudo imágenes de docker

Paso 5. Ahora ejecutaremos nuestra imagen de la ventana acoplable para ver si funciona como se esperaba:

$ sudo docker run -d -p 80:80 imagen de servidor web: v1

Después de una ejecución exitosa, generará una identificación larga como se muestra a continuación:

Paso 6. Si todo va bien, deberíamos poder ver nuestra página web ejecutándose en nuestro navegador web nginx dentro de la ventana acoplable. Ejecute el siguiente comando para verificarlo:

$ curl 'dirección_ip'

Tenga en cuenta que la dirección IP que usamos aquí es la dirección IP del contenedor de la ventana acoplable instalada en nuestro sistema operativo host. Para saber exactamente la dirección IP requerida aquí, ejecute el siguiente comando en el host:

$ ip a | grep ^ ventana acoplable

El comando anterior contendrá la dirección IP que tenemos que usar aquí.

El comando curl anterior mostrará el índice.contenido html del servidor web nginx.

Otra forma simple y directa es pasar la ventana acoplable como argumento curl, como se muestra a continuación:

Paso 7. Si lo desea, puede verificar qué puerto y procesos se están ejecutando dentro de nuestro contenedor docker. Ejecute el siguiente comando:

$ sudo docker ps

Esto completa nuestra guía sobre la creación automática de imágenes de Docker en Debian 10 (Buster). Hemos visto cómo podemos construir imágenes de Docker a partir de Dockerfile en lugar de editar manualmente cada imagen.

Aunque esta guía se realiza en Debian 10, también debería ejecutarse en otras distribuciones basadas en Debian como Ubuntu, Linux mint, etc. No olvide compartir esta guía con otras personas. Además, suscríbase a nuestro blog para obtener la última actualización y HowTos en Linux.

Trackpad en pantalla y puntero del mouse AppyMouse para tabletas Windows
Los usuarios de tabletas a menudo pierden el puntero del mouse, especialmente cuando son habituales para usar las computadoras portátiles. Los teléfon...
El botón central del mouse no funciona en Windows 10
La botón central del ratón le ayuda a desplazarse por páginas web largas y pantallas con una gran cantidad de datos. Si eso se detiene, bueno, termina...
Cómo cambiar los botones izquierdo y derecho del mouse en una PC con Windows 10
Es una norma que todos los dispositivos de mouse de computadora estén diseñados ergonómicamente para usuarios diestros. Pero hay dispositivos de mouse...