MCC - Implementación Dockerizada
Servir un Sitio HTML5 Utilizando una Imagen Docker Liviana con Apache
Para servir tu sitio HTML5 utilizando una imagen Docker liviana con Apache, te recomiendo que utilices una imagen basada en Alpine, que es una de las distribuciones de Linux más ligeras disponibles. Alpine es ideal para casos en los que se busca minimizar el tamaño de las imágenes y mejorar la eficiencia en Kubernetes.
A continuación te doy un ejemplo de cómo sería el Dockerfile utilizando una imagen de httpd (Apache) basada en Alpine:
Dockerfile
<syntaxhighlight lang="docker">
- Usa la imagen de Apache en Alpine como base
FROM httpd:alpine
- Copia los archivos de tu sitio web a la carpeta de Apache
COPY ./public-html/ /usr/local/apache2/htdocs/
- Expone el puerto 80 para servir el sitio
EXPOSE 80
- Comando para iniciar Apache en modo foreground
CMD ["httpd-foreground"] </syntaxhighlight>
Estructura del Proyecto
Supongamos que tienes los archivos de tu sitio web HTML5 en una carpeta llamada public-html dentro del mismo directorio donde está el Dockerfile. Esta estructura es común en proyectos web estáticos.
Pasos para construir y ejecutar la imagen
Construir la imagen Docker:
<syntaxhighlight lang="bash"> docker build -t mi-sitio-html5:latest . </syntaxhighlight>
Ejecutar la imagen en un contenedor:
<syntaxhighlight lang="bash"> docker run -d -p 80:80 mi-sitio-html5:latest </syntaxhighlight>
Con esto, estarías sirviendo tu sitio web estático a través del puerto 80.
Ventajas de usar Alpine
- Tamaño reducido: Las imágenes basadas en Alpine suelen ser mucho más pequeñas que las tradicionales.
- Eficiencia en Kubernetes: Usar imágenes más livianas ayuda a mejorar los tiempos de despliegue y a reducir el consumo de recursos en un clúster.