2.6 KiB
2.6 KiB
Лабораторная работа №1 - Знакомство с docker и docker-compose
Цель: изучение современных технологий контейнеризации.
Задачи:
- Установить средство контейнеризации docker.
- Изучить применение и принципы docker.
- Изучить утилиту docker-compose и структуру файла docker-compose.yml.
- Развернуть не менее 3х различных сервисов при помощи docker-compose.
- Оформить отчёт в формате Markdown и создать Pull Request в git-репозитории.
Ход работы:
Разворачивание сервисов
Были выбраны три сервиса:
- mediawiki - движок вики.
- redmine - система учёта багов, т.е. баг-трекер.
- wordpress - популярная система управления контентом.
docker-compose.yml
Был создан файл docker-compose.yml для разворачивания сервисов:
version: "3" #формат конфигурации Docker Compose версии 3
services: #определение сервисов
mediawiki:
image: mediawiki #образ для контейнера
ports:
- "8086:80" #проброс порта 8086 хоста на порт 80 контейнера
volumes:
- volume-mediawiki:/var/log/mediawiki #том для хранения логов MediaWiki вне контейнера
redmine:
image: redmine #образ для контейнера
ports:
- "8087:3000" #проброс порта 8087 хоста на порт 3000 контейнера
volumes:
- volume-redmine:/usr/src/redmine/log #том для хранения логов Redmine вне контейнера
wordpress:
image: wordpress #образ для контейнера
ports:
- "8088:80" #проброс порта 8088 хоста на порт 80 контейнера
volumes:
- volume-wordpress:/var/log/php #том для хранения логов PHP WordPress вне контейнера
volumes: #определение томов
volume-mediawiki:
volume-redmine:
volume-wordpress:
docker-compose up -d
Dockerhub
Результат:
http://localhost:8086/ http://localhost:8087/ http://localhost:8088/