Un Dockerfile es un documento de texto que contiene todas las instrucciones necesarias para construir una imagen de Docker. En él, se describen los comandos que un usuario podría ejecutar en la línea de comandos para ensamblar una imagen. Algunas de las instrucciones más comunes en un Dockerfile son:
FROM: Define la imagen base desde la cual se construirá la nueva imagen.
RUN: Ejecuta comandos durante la construcción de la imagen.
COPY y ADD: Copian archivos y directorios al sistema de archivos del contenedor.
ENV: Establece variables de entorno.
EXPOSE: Describe los puertos en los que la aplicación está escuchando.
CMD y ENTRYPOINT: Especifican el comando predeterminado que se ejecutará al iniciar un contenedor.
Aquí tienes un ejemplo básico de un archivo Dcokerfile
# Usar una imagen base oficial de Debian
FROM debian:12
# Evitar interacciones durante la instalación de paquetes
ARG DEBIAN_FRONTEND=noninteractive
# Actualizar paquetes e instalar Apache
RUN apt-get update && apt-get install -y \
apache2 \
&& apt-get clean
# Copiar archivos HTML al directorio raíz de Apache
COPY ./html/ /var/www/html/
# Exponer el puerto 80 para el servidor web
EXPOSE 80
# Comando para iniciar Apache en primer plano
CMD ["apachectl", "-D", "FOREGROUND"]