MCC - Implementación Dockerizada

De MCC™ Wiki

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">

  1. Usa la imagen de Apache en Alpine como base

FROM httpd:alpine

  1. Copia los archivos de tu sitio web a la carpeta de Apache

COPY ./public-html/ /usr/local/apache2/htdocs/

  1. Expone el puerto 80 para servir el sitio

EXPOSE 80

  1. 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.