Introduction
Dans ce défi, vous allez mettre en pratique la gestion de services conteneurisés sur un système Red Hat Enterprise Linux. Votre mission consiste à construire une image de conteneur personnalisée pour un serveur web, à lancer un conteneur basé sur cette image et à vous assurer que le service est accessible depuis le système hôte. Cet exercice couvre les compétences fondamentales pour le déploiement et la gestion d'applications en conteneurs, une compétence clé pour tout administrateur système certifié Red Hat (RHCSA).
Exécuter un service dans un conteneur
Au cours de ce défi, vous allez concevoir une image de conteneur personnalisée incluant le serveur HTTP Apache (httpd). Vous devrez créer un fichier HTML simple qui sera diffusé par le serveur web, puis lancer un conteneur à partir de votre image. Enfin, vous vérifierez que le service web fonctionne correctement et qu'il est bien accessible depuis l'hôte.
Tâches
- Construire une image de conteneur personnalisée incluant le serveur HTTP Apache (
httpd). - Créer un fichier HTML simple destiné à être servi par le serveur web.
- Exécuter un conteneur à partir de votre image personnalisée et exposer le service web.
- Vérifier que le service web est opérationnel et accessible depuis la machine hôte.
Exigences
- Tous les fichiers doivent être créés dans le répertoire
~/project. - Créer un
Dockerfileutilisant l'image de baseubi9. - Le
Dockerfiledoit installer le paquethttpd. - Créer un fichier
index.htmlcontenant le texteHello, World!à l'intérieur d'une balise<h1>. - Construire l'image du conteneur et la nommer
my-web-server. - Lancer un conteneur en arrière-plan à partir de l'image
my-web-server. - Le conteneur doit être nommé
my-web-server-run. - Le serveur web à l'intérieur du conteneur doit écouter sur le port
80, et ce port doit être redirigé vers le port8080de l'hôte.
Exemple
Une fois le conteneur démarré avec succès, l'exécution de la commande curl localhost:8080 dans votre terminal devrait produire un résultat similaire à celui-ci :
<html>
<body>
<h1>Hello, World!</h1>
</body>
</html>
Résumé
Dans ce défi, vous avez appris à conteneuriser un service sur un système Red Hat Enterprise Linux. Vous avez créé avec succès un Dockerfile pour définir un environnement personnalisé, construit une image de conteneur à l'aide de podman et exécuté un conteneur pour héberger un serveur web. Vous vous êtes également exercé à vérifier l'état d'un conteneur actif et à tester son service réseau. Ce sont des compétences essentielles pour le déploiement d'applications modernes et l'administration système.



