Введение
В этом испытании вы закрепите навыки управления контейнеризированными сервисами в среде Red Hat Enterprise Linux. Ваша задача — создать собственный образ контейнера для веб-сервера, запустить контейнер на основе этого образа и обеспечить доступность сервиса с хост-системы. Данное упражнение охватывает фундаментальные навыки развертывания и управления приложениями в контейнерах, что является ключевой компетенцией системного администратора Red Hat (RHCSA).
Запуск сервиса внутри контейнера
В ходе этого задания вы создадите кастомный образ контейнера, включающий HTTP-сервер Apache (httpd). Вам нужно будет подготовить простой HTML-файл, который будет обслуживаться веб-сервером, и запустить контейнер из созданного образа. В завершение вы проверите работоспособность веб-сервиса и его доступность из основной системы.
Задачи
- Собрать собственный образ контейнера с установленным HTTP-сервером Apache (
httpd). - Создать простой HTML-файл для отображения веб-сервером.
- Запустить контейнер из вашего образа и пробросить порт для доступа к веб-сервису.
- Убедиться, что веб-сервис работает корректно и доступен с хоста.
Требования
- Все файлы должны быть созданы в директории
~/project. - Создайте
Dockerfile, использующий базовый образubi9. - В
Dockerfileдолжна быть прописана установка пакетаhttpd. - Создайте файл
index.html, содержащий текстHello, World!внутри тега<h1>. - Соберите образ контейнера и присвойте ему тег
my-web-server. - Запустите контейнер в фоновом режиме на основе образа
my-web-server. - Контейнеру необходимо присвоить имя
my-web-server-run. - Веб-сервер внутри контейнера должен прослушивать порт
80, который необходимо сопоставить с портом8080на хост-машине.
Пример
После успешного запуска контейнера выполнение команды curl localhost:8080 в терминале должно вывести результат, похожий на этот:
<html>
<body>
<h1>Hello, World!</h1>
</body>
</html>
Резюме
В этом испытании вы научились контейнеризировать сервис в системе Red Hat Enterprise Linux. Вы успешно создали Dockerfile для настройки кастомной среды, собрали образ контейнера с помощью podman и запустили контейнер для работы веб-сервера. Также вы закрепили навыки проверки состояния запущенных контейнеров и тестирования сетевых сервисов. Эти навыки являются базовыми для современного развертывания приложений и системного администрирования.



