Найти в Дзене
Я у мамы сисадмин

Модуль 2. Задание 5

Развертывание приложений в Docker на сервере BR-SRV. Для установки средства контейнеризации на BR-SRV выполнить команду: # dnf install docker-ce docker-ce-cli -y После установки запустить сервис контейнеризации docker и добавить его в автозагрузку: # systemctl enable docker --now Проверив статус запущенной службы: # systemctl status docker Для получения информации об установленном docker: # docker info При корректной настройке будет получен соответствующий ответ от сервиса Docker. Для установки docker-compose выполнить команду: # dnf install docker-compose -y Для облегчения создания wiki.yml подключаемся по SSH к BR-SRV с HQ-CLI. Для упрощения создания wiki.yml в поисковой системе (Яндекс) на HQ-CLI пишем mediawiki docker-compose и переходим по ссылке На странице находим раздел Adding a Database Server В домашней директории пользователя sshuser создаем композер-файл wiki.yaml: # cd /home/sshuser
# nano wiki.yaml Копируем и вставляем содержимое c сайта в wiki.yml И вносим след
Оглавление

Задание

Развертывание приложений в Docker на сервере BR-SRV.

  • Создайте в домашней директории пользователя файл wiki.yml для приложения MediaWiki.
  • Средствами docker compose должен создаваться стек контейнеров с приложением MediaWiki и базой данных.
  • Используйте два сервиса
  • Основной контейнер MediaWiki должен называться wiki и использовать образ mediawiki
  • Файл LocalSettings.php с корректными настройками должен находиться в домашней папке пользователя и автоматически монтироваться в образ.
  • Контейнер с базой данных должен называться mariadb и использовать образ mariadb.
  • Разверните
  • Он должен создавать базу с названием mediawiki, доступную по стандартному порту, пользователя wiki с паролем WikiP@ssw0rd должен иметь права доступа к этой базе данных
  • MediaWiki должна быть доступна извне через порт 8080.

Реализация

Установка docker и docker-compose

Для установки средства контейнеризации на BR-SRV выполнить команду:

# dnf install docker-ce docker-ce-cli -y

После установки запустить сервис контейнеризации docker и добавить его в автозагрузку:

# systemctl enable docker --now

Проверив статус запущенной службы:

# systemctl status docker

Для получения информации об установленном docker:

# docker info

При корректной настройке будет получен соответствующий ответ от сервиса Docker.

Для установки docker-compose выполнить команду:

# dnf install docker-compose -y

Установка MediaWiki

Для облегчения создания wiki.yml подключаемся по SSH к BR-SRV с HQ-CLI.

Для упрощения создания wiki.yml в поисковой системе (Яндекс) на HQ-CLI пишем mediawiki docker-compose и переходим по ссылке
-2

На странице находим раздел Adding a Database Server
-3

В домашней директории пользователя sshuser создаем композер-файл wiki.yaml:

# cd /home/sshuser

# nano wiki.yaml

Копируем и вставляем содержимое c сайта в wiki.yml

И вносим следующие изменения, порт на 8080, имя контейнера и образ на mariadb,имя БД на mediawiki, пароль пользователя БД на WikiP@ssw0rd, изменяем параметр volumes (правим путь)
-4
Чтобы отдельный volume для хранения базы данных имел правильное имя - создаём его средствами docker:

# docker volume create dbvolume

Посмотреть все тмеющиеся volume можно командой

# docker volume ls

Выполняем сборку и запуск стека контейнеров с приложением MediaWiki и базой данных описанных в файле wiki.yml:

# docker-compose -f wiki.yml up -d

Для просмотра списка контейнеров вводим команду docker ps. Позволяет смотреть как запущенные контейнеры Docker, так и все контейнеры, которые есть в системе.

Установка и настройка через Web – интерфейс

Переходим на HQ-CLI в браузере по адресу http://192.168.200.2:8080 (IP BR-SRV) для продолжения установки через веб-интерфейс - нажимаем set up the wiki:
-5

Выбираем необходимый Язык - жмем Далее:
-6

После успешной проверки внешней среды - жмем Далее:
-7

Заполняем параметры подключение к БД в соответствие с заданными переменными окружения в wiki.yml, которые соответствуют заданию:
-8

Ставим галочку и жмем далее
-9

Вносим необходимые сведения:
-10

Будет автоматически скачен файл LocalSettings.php - который необходимо передать на BR-SRV в директорию /home/sshuser туда же где лежит wiki.yml:
-11
Передача LocalSettings.php на BR-SRV

Передаем данный файл (LocalSettings.php) c HQ-CLI - > BR-SRV в директорию

# scp -P 2024 /home/user/Загрузки/LocalSettings.php sshuser@192.168.200.2:/home/sshuser

Раскомментируем строку в файле wiki.yml :

# nano wiki.yml

-12
Перезапускаем сервисы средствами docker-compose:

# docker-compose -f wiki.yml stop

# docker-compose -f wiki.yml up -d

Проверяем доступ к Wiki http://192.168.200.2:8080
-13
Входим под пользователя wiki с паролем WikiP@ssw0rd:

Полезности

Удалить/очистить все данные Докера (контейнеры, образы, тома и сети)

Остановка всех контейнеров

docker stop $(docker ps -qa)

Удаление всех контейнеров

docker rm $(docker ps -qa)

Удаление всех образов

docker rmi -f $(docker images -qa)

Удаление всх томов

docker volume rm $(docker volume ls -q)

Удаление всех сетей

docker network rm $(docker network ls -q)

Команды не должны выводить какие-либо элементы:

docker ps -a

docker images -a

docker volume ls

Команда удаляет неиспользуемые образы

docker system prune