Здравствуйте, читатели! В этой статье мы сосредоточимся на развертке Apache с помощью Dockerfile. Так, как Docker является кроссплатформенным, то развертка возможна на любой операционной системе Linux или Windows, начиная с 10 версии.
Итак, начнем!
Что такое сервер Apache?
Apache — это веб-сервер с открытым исходным кодом для настройки и размещения веб-приложений онлайн и локально, а также с использованием localhost
в качестве среды.
Если требуется настроить сервер Apache на рабочей станции, требуется много настроек. Чтобы их сократить, Docker представил концепцию Dockerfile, позволяющую легко создавать и настраивать конфигурации.
В ходе изучения этой темы мы настроим сервер Apache всего за несколько шагов.
Сервер Apache через Dockerfile
Нам необходимо выполнить следующие шаги, чтобы настроить сервер Apache через Dockerfile:
- Создайте каталог для всех файлов, связанных с настройкой Apache.
- Создать Docker-файл
- Создайте образ поверх Dockerfile и пометьте его для удобства.
- Запустите сервер Apache как контейнер
1. Создайте каталог для файлов сервера Apache.
Сначала мы используем команду mkdir
, чтобы создать каталог специально для всех файлов, связанных с Apache.
1 |
mkdir apache_folder |
2. Создание файла Dockerfile
Создав папку, теперь мы создаем Dockerfile в этой папке с помощью редактора vi
:
1 |
vi Dockerfile |
Как только мы выполним предыдущую команду, откроется редактор vi . Вставьте следующий контент в Dockerfile:
1 2 3 4 5 6 7 |
FROM ubuntu RUN apt update RUN apt install –y apache2 RUN apt install –y apache2-utils RUN apt clean EXPOSE 80 CMD [“apache2ctl”, “-D”, “FOREGROUND”] |
3: Пометьте и создайте образ Docker
Теперь мы создаем Dockerfile с помощью docker build
команды. В котором мы помечаем создаваемое изображение как 1.0
и присваиваем нашему изображению индивидуальное имя (т.е. apache_image
).
1 |
docker build -t apache_image:1.0 . |
После создания образа мы должны проверить наличие образа с помощью docker images команды.
Команда docker images предоставляет нам список всех образов, которые созданы или извлечены из любого публичного / частного реестра.
1 2 3 |
docker images REPOSITORY TAG IMAGE ID CREATED SIZE apache_image 1.0 a738dbef66ef 15 seconds ago 133MB |
4: Запустите образ Docker как контейнер
После создания образа запустите его как контейнер локально:
- Мы запускаем контейнер в отдельном режиме, чтобы он непрерывно работал в фоновом режиме. Включите
-d
вdocker run
команду. - Для размещения сервера Apache мы предоставляем порт
80
(HTTP) для него. Используйте-p 80:80
для запуска сервераlocalhost
.
Таким образом, команда docker run
также принимает изображение вместе с соответствующим тегом в качестве входных данных для запуска его как контейнера.
1 |
docker run --name myapache -d -p 80:80 apache_image:1.0 |
1 2 3 |
docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 443848c30b74 apache_image:1.0 "/docker-entrypoint.…" 7 seconds ago Up 6 seconds 0.0.0.0:80->80/tcp myapache |
5: Проверьте наличие сервера Apache в Сети
Чтобы проверить наличие сервера Apache в системе, посетите любой локальный браузер и введите localhost
:
На этом мы подошли к концу этой темы. Не стесняйтесь комментировать, если у вас возникли вопросы. Чтобы узнавать больше про Docker, следите за нашими обновлениями.
Пожалуйста, сообщите получилось ли у вас настроить сервер Apache по моей инструкции в комментариях или в чате телеграм.