apt-get upadate
apt-get install apache2

Una vez instalado el apache en nuestro contenedor de Ubuntu, verificamos el estado del servicio: “service apache2 status” en donde nos deberá salir un mensaje indicando apache no está corriendo. De manera que se procede a iniciar el servicio por medio del comando: “service apache2 start”. Al verificar nuevamente el estado del servicio vemos que ahora ya está corriendo.
Salir del contenedor sin finalizar su ejecución, y proceder a crear la nueva imagen por medio del siguiente comando de docker:
docker
commit --change "CMD /usr/sbin/apache2ctl -DFOREGROUND" -c
"EXPOSE 85" b109c62e71e9 apacheubu

Y verificar que haya quedado correctamente creada la imagen.
El siguiente paso consiste en crear el contenedor con la imagen recién creada con el siguiente comando: Docker run -d -p 5000:80 apacheubu
El parámetro -d permite indicar si el contenedor se va a ejecutar en modo background o si por el contrario se va a ejecutar en primer plano en cuyo caso debería ser -d=false.
El parámetro -p permite exponer los puertos internos del contenedor por los cuales se comunicará, es decir, el puerto expuesto es accesible en el host y estarán disponibles para cualquier cliente que pueda llegar al host. Docker vincula cada puerto expuesto a un puerto aleatorio en el host.
El puerto 5000 en este caso es el puerto del host y el 80 es el puerto del contenedor. Para más detalles acerca de la configuración de los puertos en docker: https://docs.docker.com/config/containers/container-networking/

Ahora comprobaremos que el servidor de apache está funcionando, de manera que accederemos a la url: localhost:5000 desde nuestro navegador. Deberemos ver la página principal del apache de nuestro localhost (del apache del contenedor).

Hasta este punto lo único que se ha hecho es crear una nueva imagen y generar un contenedor a partir de ella, ahora lo que haremos será realizar el mismo procedimiento, pero enlazando el contenedor con una ruta de nuestro host de manera que podamos ver
un sitio web real (prueba).
Para ello lo que haremos será crear un contenedor nuevo a partir de la misma imagen creada por nosotros (la imagen de Ubuntu + apache), pero para este caso debemos tener un directorio en nuestro equipo del cual se leerán los datos (en nuestro caso una
página web de prueba). Los pasos a seguir son:

Dentro de esta carpeta descomprimir el archivo hielo_site.rar, el cual contiene todos los archivos necesarios de un sitio web de prueba.

2. Crear un nuevo contenedor en el cual indicaremos los puertos por los cuales se comunicarán nuestro Host con el contenedor, las rutas (tanto del host como del contenedor) para el intercambio de archivos y la imagen de la cual se creará el nuevo contenedor:
docker run -dit --name paginadev -p 5000:80 -v "C:\Users\UserQV\Documents\Documentos Docker\Apache Web Server\hielo_site":/var/www/html/ servidor
3. Vamos al navegador web digitamos la siguiente ruta: http://localhost:5000/elements.html donde debemos ver la siguiente página web.

NOTA: En caso de necesitar el codigo de la página de prueba, solo dirijase a la siguiente vista