Docker: creación de un archivo Docker de servidor web
Ya hemos aprendido a usar Docker File para crear nuestras propias imágenes personalizadas. Ahora veamos cómo podemos construir una imagen de servidor web que se pueda usar para construir contenedores.
En nuestro ejemplo, usaremos el servidor web Apache en Ubuntu para construir nuestra imagen. Sigamos los pasos que se indican a continuación para crear nuestro archivo Docker de servidor web.
Step 1- El primer paso es construir nuestro Docker File. Usemosvim y cree un archivo Docker con la siguiente información.
FROM ubuntu
RUN apt-get update
RUN apt-get install –y apache2
RUN apt-get install –y apache2-utils
RUN apt-get clean
EXPOSE 80 CMD [“apache2ctl”, “-D”, “FOREGROUND”]
Los siguientes puntos deben tenerse en cuenta sobre las declaraciones anteriores:
Primero estamos creando nuestra imagen a partir de la imagen base de Ubuntu.
A continuación, usaremos el comando RUN para actualizar todos los paquetes en el sistema Ubuntu.
A continuación, usamos el comando RUN para instalar apache2 en nuestra imagen.
A continuación, usamos el comando RUN para instalar los paquetes de utilidad apache2 necesarios en nuestra imagen.
A continuación, usamos el comando RUN para limpiar cualquier archivo innecesario del sistema.
El comando EXPOSE se usa para exponer el puerto 80 de Apache en el contenedor al host de Docker.
Finalmente, el comando CMD se usa para ejecutar apache2 en segundo plano.
Ahora que se han ingresado los detalles del archivo, simplemente guarde el archivo.
Step 2 - Ejecutar el Docker buildcomando para compilar el archivo Docker. Se puede hacer usando el siguiente comando:
sudo docker build –t=”mywebserver” .
Estamos etiquetando nuestra imagen como mywebserver. Una vez creada la imagen, recibirá un mensaje de éxito de que el archivo se ha creado.
Step 3- Ahora que se ha creado el archivo del servidor web, es el momento de crear un contenedor a partir de la imagen. Podemos hacer esto con el Dockerrun mando.
sudo docker run –d –p 80:80 mywebserver
Los siguientes puntos deben tenerse en cuenta sobre el comando anterior:
El número de puerto expuesto por el contenedor es 80. Por lo tanto, con el –p comando, estamos mapeando el mismo número de puerto al número de puerto 80 en nuestro localhost.
los –dLa opción se utiliza para ejecutar el contenedor en modo independiente. Esto es para que el contenedor pueda ejecutarse en segundo plano.
Si va al puerto 80 del host de Docker en su navegador web, ahora verá que Apache está en funcionamiento.