Estibador

Cómo funciona Dockerfile?

Cómo funciona Dockerfile?
Puede implementar solo un contenedor con la ayuda de la imagen de la ventana acoplable. Sin embargo, si necesita implementar varios contenedores (cada uno para diferentes tareas) desde la misma imagen, ¿qué sucede?? Puede resolver esto con la ayuda del dockerfile.

Dockerfile es un archivo de texto simple que contiene todos los comandos que el usuario puede llamar en la línea de comandos para ensamblar o construir una imagen. Con la ayuda de la compilación de docker, puede automatizar fácilmente la compilación que ejecuta múltiples comandos definidos en el dockerfile en sucesión.

Por ejemplo, desea descargar la imagen de la ventana acoplable desde el concentrador de la ventana acoplable para sus necesidades de desarrollo específicas. Luego, desea actualizar la imagen, instale algunos paquetes para su proceso de desarrollo. En este caso, puede crear un archivo docker, incluir todos los parámetros para sus necesidades específicas y crear su imagen personalizada. Después de crear un archivo docker, puede usarlo una y otra vez para crear la misma imagen sin instalar manualmente todos los paquetes necesarios para su proceso de desarrollo.

Dockerfile básico

Antes de trabajar con dockerfile, es importante saber cómo hacer un dockerfile. Dockerfile incluye palabras clave específicas que se pueden usar para crear una imagen específica. A continuación, se incluye una breve explicación de todas las palabras clave utilizadas en un archivo docker:

Creando el Dockerfile

En esta sección, crearemos un archivo docker para construir una imagen de servidor LAMP a partir de la imagen base de Ubuntu.

Primero, necesitará crear un directorio para almacenar el dockerfile. Puedes crearlo con el siguiente comando:

LÁMPARA mkdir

A continuación, cree un directorio llamado Dockerfile dentro del directorio:

nano LAMP / Dockerfile

Agrega las siguientes líneas:

DESDE ubuntu: último
MANTENIMIENTO Hitesh Jethva
ENV DEBIAN_FRONTEND = no interactivo
EJECUTAR apt-get update -y && apt-get install apache2 mariadb-server
libapache2-mod-php php php-cli php-common php-mysql php-json php-curl -y
CMD ["apachectl", "- D", "PRIMER PLANO"]
EXPONER 8080

Guarde y cierre el archivo cuando haya terminado.

Construyendo imagen con Dockerfile

Después de crear el Dockerfile, puede crear fácilmente una imagen LAMP personalizada con la ayuda de Dockerfile.

Primero, cambie el directorio a LAMP y ejecute el siguiente comando para construir la imagen a partir de ese archivo:

LÁMPARA cd
docker build -t "lámpara: Dockerfile".

El comando anterior comenzará a descargar la última imagen de Ubuntu desde Docker Hub e instalará los paquetes necesarios especificados en Dockerfile. Una vez que la imagen se haya creado correctamente, debería ver el siguiente resultado:

Envío de contexto de compilación al demonio 2 de Docker.048kB
Paso 1/6: DESDE ubuntu: último
último: Extrayendo de la biblioteca / ubuntu
54ee1f796a1e: Extracción completa
f7bfea53ad12: Extracción completa
46d371e02073: Tire completo
b66c17bbf772: Extracción completa
Resumen: sha256: 31dfb10d52ce76c5ca0aa19d10b3e6424b830729e32a89a7c6eee2cda2be67a5
Estado: imagen más reciente descargada para ubuntu: última
---> 4e2eef94cd6b
Paso 2/6: MANTENIMIENTO Hitesh Jethva
---> Ejecutando en 047977af2c2a
Extracción del recipiente intermedio 047977af2c2a
---> 1331df625c4c
Paso 3/6: ENV DEBIAN_FRONTEND = no interactivo
---> Ejecutando en 3597152c7a1b
Extracción del contenedor intermedio 3597152c7a1b
---> 86c82c95e75d
Paso 4/6: EJECUTE apt-get update -y && apt-get install apache2 mariadb-server
libapache2-mod-php php php-cli php-common php-mysql php-json php-curl -y
Extracción del contenedor intermedio 322532299fd9
---> f6897a9554f7
Paso 5/6: CMD ["apachectl", "- D", "PRIMER PLANO"]
---> Ejecutando en 669635bc8bcb
Extracción del contenedor intermedio 669635bc8bcb
---> e8400eb2e677
Paso 6/6: EXPONER 8080
---> Ejecutando en 937ae2b2d305
Extracción del contenedor intermedio 937ae2b2d305
---> 2123a857361d
Construido con éxito 2123a857361d
Lámpara etiquetada correctamente: Dockerfile

Ahora puede enumerar la imagen que acaba de crear ejecutando el siguiente comando:

imágenes de docker

Debería ver el siguiente resultado:

TAMAÑO DE ID DE IMAGEN DE ETIQUETA DE REPOSITORIO CREADO
lamp Dockerfile 2123a857361d Hace 44 segundos 520MB
ubuntu último 4e2eef94cd6b hace 8 días 73.9 MB

Ahora, tiene una imagen de servidor LAMP personalizada en su mano. También puede ver el historial de cada comando con el siguiente comando:

lámpara de historial de Docker: Dockerfile

Debería ver el siguiente resultado:

IMAGEN CREADA CREADA POR TAMAÑO COMENTARIO
2123a857361d hace 16 minutos / bin / sh -c # (nop) EXPOSE 8080 0B
e8400eb2e677 Hace 16 minutos / bin / sh -c # (nop) CMD ["apachectl" "-D" "FO… 0B
f6897a9554f7 Hace 16 minutos / bin / sh -c apt-get update -y && apt-get inst… 446MB
86c82c95e75d hace 17 minutos / bin / sh -c # (nop) ENV DEBIAN_FRONTEND = nonin… 0B
1331df625c4c Hace 17 minutos / bin / sh -c # (nop) MAINTAINER Hitesh Jethva 0B
4e2eef94cd6b hace 8 días / bin / sh -c # (nop) CMD ["/ bin / bash"] 0B

Creación de un contenedor a partir de la imagen LAMP

Ahora, puede ejecutar un contenedor desde su imagen usando el siguiente comando:

docker run -dit lámpara: Dockerfile

Una vez que se ha iniciado el contenedor, debería ver el siguiente resultado:

0d2beb7dba01bb763768b116f734ae68286cee00d2ae923b2b7241c39ad54208

Puede verificar el contenedor en ejecución con el siguiente comando:

docker ps

Debería obtener el siguiente resultado:

ID DE CONTENEDOR COMANDO DE IMAGEN ESTADO CREADO NOMBRES DE PUERTOS
c14794784eb2 lámpara: Dockerfile "apachectl -D FOREGR…" Hace 2 minutos Arriba 2 minutos 0.0.0.0: 8080-> 8080 / tcp quirky_ramanujan

Conclusión

En esta guía, aprendió qué es Dockerfile y cómo crear una imagen de Docker con Dockerfile. Esto es muy útil para crear sus imágenes personalizadas en lugar de realizar cambios en una imagen extraída.

El botón de clic izquierdo del mouse no funciona en Windows 10
Si está utilizando un mouse dedicado con su computadora portátil o computadora de escritorio, pero el el botón izquierdo del mouse no funciona en Wind...
El cursor salta o se mueve aleatoriamente mientras escribe en Windows 10
Si descubre que el cursor del mouse salta o se mueve por sí solo, automáticamente, de manera aleatoria mientras escribe en una computadora portátil o ...
Cómo invertir la dirección de desplazamiento del mouse y los paneles táctiles en Windows 10
Ratón y Panel táctils no solo facilitan la informática, sino que también hacen que sea más eficiente y requieran menos tiempo. No podemos imaginar una...