Introducción
En este desafío, pondrás en práctica la gestión de servicios contenedorizados en un sistema Red Hat Enterprise Linux. Tu tarea consiste en construir una imagen de contenedor personalizada para un servidor web, ejecutar un contenedor basado en dicha imagen y asegurar que el servicio sea accesible desde el sistema anfitrión. Este ejercicio abarca habilidades fundamentales para el despliegue y la administración de aplicaciones en contenedores, una competencia esencial para cualquier Administrador de Sistemas Certificado por Red Hat (RHCSA).
Ejecutar un servicio dentro de un contenedor
En este desafío, construirás una imagen de contenedor personalizada que incluya el servidor HTTP Apache (httpd). Crearás un archivo HTML sencillo para que sea servido por el servidor web y ejecutarás un contenedor a partir de tu imagen personalizada. Finalmente, verificarás que el servicio web funcione correctamente y sea accesible desde el host.
Tareas
- Construir una imagen de contenedor personalizada que incluya el servidor HTTP Apache (
httpd). - Crear un archivo HTML sencillo para ser servido por el servidor web.
- Ejecutar un contenedor basado en tu imagen personalizada y exponer el servicio web.
- Verificar que el servicio web se esté ejecutando correctamente y sea accesible desde el host.
Requisitos
- Todos los archivos deben crearse en el directorio
~/project. - Crear un
Dockerfileque utilice la imagen baseubi9. - El
Dockerfiledebe instalar el paquetehttpd. - Crear un archivo
index.htmlque contenga el textoHello, World!dentro de una etiqueta<h1>. - Construir una imagen de contenedor y etiquetarla como
my-web-server. - Ejecutar un contenedor en segundo plano desde la imagen
my-web-server. - El contenedor debe llamarse
my-web-server-run. - El servidor web dentro del contenedor debe escuchar en el puerto
80, y este puerto debe estar mapeado al puerto8080en el host.
Ejemplo
Tras iniciar correctamente el contenedor, al ejecutar el comando curl localhost:8080 en tu terminal, deberías obtener una salida similar a esta:
<html>
<body>
<h1>Hello, World!</h1>
</body>
</html>
Resumen
En este desafío, has aprendido a contenedorizar un servicio en un sistema Red Hat Enterprise Linux. Has creado con éxito un Dockerfile para definir un entorno personalizado, has construido una imagen de contenedor utilizando podman y has ejecutado un contenedor para alojar un servidor web. También has practicado la verificación del estado de un contenedor en ejecución y la comprobación de su servicio de red. Estas son habilidades esenciales para el despliegue de aplicaciones modernas y la administración de sistemas.



