# Лабораторная работа 1. Знакомство с docker и docker-compose ### Задание на лабораторную работу 1. Установить средство контейнеризации docker. 2. Изучить применение и принципы docker. 3. Изучить утилиту docker-compose и структуру файла docker-compose.yml. 4. Развернуть не менее 3х различных сервисов при помощи docker-compose. *** ### Как запустить лабораторную работу Для запуска лабораторной работы необходимо перейти в директорию с файлом `docker-compose.yaml` и выполнить команду: ``` docker-compose up -d ``` *** ### Разворачиваемые сервисы Были выбраны 3 сервиса: * mediawiki - движок вики; * wordpress - популярная система управления контентом; * gitea - сервис для хранения репозиториев git. *** ### Содержимое docker-compose.yml Файл содержит следующее: - блок *services*, где перечислены разворачиваемые сервисы; - для каждого сервиса описаны *image* (образ, на основе которого создаётся контейнер), *ports* (проброс порта с хоста на порт контейнер) и *volumes* (указание на том с путем для сохранения данных). - блок *volumes*, где описаны тома. Конфигурация сервиса `mediawiki`: ``` mediawiki: # название сервиса image: mediawiki # образ для контейнера ports: - 8083:80 # пробрасываем порт 80 контейнера на порт 8083 хоста volumes: - mediawiki-data:/var/www/html # создаем volume для сохранения данных MediaWiki ``` Конфигурация сервиса `wordpress`: ``` wordpress: image: wordpress ports: - 8084:80 # пробрасываем порт 80 контейнера на порт 8084 хоста volumes: - wp-data:/var/www/html # создаем volume для сохранения данных WordPress ``` Конфигурация сервиса `gitea`: ``` gitea: image: gitea/gitea ports: - 4000:3000 # пробрасываем порт 3000 контейнера на порт 4000 хоста volumes: - gitea-data:/data # создаем volume для сохранения данных Gitea ``` *** ### Скриншоты ***Dockerhub*** ![](images/dockerhub.jpg) ***MediaWiki*** ![](images/mediawiki.jpg) ***WordPress*** ![](images/wordpress.jpg) ***Gitea*** ![](images/gitea.jpg) ### Ссылка на видео: https://drive.google.com/file/d/1J2OdpwXdDq-zV7Iam1Tc0xCW7MOTt7f6/view?usp=sharing