vaksman_valerya_lab_1 #5
4
vaksman_valerya_lab_1/.env
Normal file
4
vaksman_valerya_lab_1/.env
Normal file
@ -0,0 +1,4 @@
|
||||
DB_HOST = db
|
||||
DB_USER = wordpress
|
||||
DB_PASSWORD = wordpress
|
||||
DB_NAME = wordpress
|
1
vaksman_valerya_lab_1/.gitignote
Normal file
1
vaksman_valerya_lab_1/.gitignote
Normal file
@ -0,0 +1 @@
|
||||
mediawiki_data/
|
BIN
vaksman_valerya_lab_1/1.png
Normal file
BIN
vaksman_valerya_lab_1/1.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 75 KiB |
129
vaksman_valerya_lab_1/README.md
Normal file
129
vaksman_valerya_lab_1/README.md
Normal file
@ -0,0 +1,129 @@
|
||||
# Лабораторная работа №1 - Знакомство с docker и docker-compose
|
||||
|
||||
## Задание
|
||||
|
||||
Разверните 3 сервиса на выбор в контейнерах docker с помощью docker-compose, учитывая следующие требования:
|
||||
|
||||
* Несколько контейнеров.
|
||||
* Хотя бы один volume.
|
||||
* Хотя бы один порт, проброшенный на хост.
|
||||
* Разворачивание системы должно пройти до конца.
|
||||
|
||||
## Запуск
|
||||
|
||||
Введение в терминале команды:
|
||||
```
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
# Выбранные сервисы
|
||||
|
||||
1. ```db``` - самая новая версия БД MaraiDB
|
||||
|
||||
2. ```phpmyadmin``` - система управления базой данных
|
||||
|
||||
3. ```mediawiki``` - движок вики
|
||||
|
||||
4. ```wordpress``` - платформа для управления контентом
|
||||
|
||||
|
||||
## Описание работы:
|
||||
|
||||
Были развёрнуты следующие сервисы:
|
||||
|
||||
### phpmyadmin
|
||||
|
||||
```
|
||||
phpmyadmin:
|
||||
depends_on:
|
||||
- db
|
||||
image: phpmyadmin
|
||||
hostname: php_my_admin
|
||||
container_name: php_my_admin
|
||||
volumes: # см. конец файла
|
||||
- php_my_admin_data:/var/www/html
|
||||
ports:
|
||||
- 8080:80
|
||||
restart: always
|
||||
environment:
|
||||
PMA_ARBITRARY: 1
|
||||
TZ: "Europe/Moscow"
|
||||
PMA_HOST: ${DB_HOST}
|
||||
PMA_USER : ${DB_USER}
|
||||
PMA_PASSWORD : ${DB_PASSWORD}
|
||||
```
|
||||
|
||||
Этот код представляет собой часть файла конфигурации ```Docker Compose```, который используется для управления многоконтейнерными приложениями в Docker.
|
||||
|
||||
#### Объяснение работы кода:
|
||||
|
||||
Эта строка отвечает за образ сброки:
|
||||
```
|
||||
image: phpmyadmin
|
||||
```
|
||||
Задание имени контейнера:
|
||||
```
|
||||
container_name: php_my_admin
|
||||
```
|
||||
Проброс портов:
|
||||
```
|
||||
ports:
|
||||
- 8080:80
|
||||
```
|
||||
Тома для хранения данных:
|
||||
```
|
||||
volumes:
|
||||
- .php_my_admin_data:/var/www/html
|
||||
|
||||
```
|
||||
Переменные окружения для Drupal
|
||||
```
|
||||
environment:
|
||||
PMA_ARBITRARY: 1
|
||||
TZ: "Europe/Moscow"
|
||||
PMA_HOST: ${DB_HOST}
|
||||
PMA_USER : ${DB_USER}
|
||||
PMA_PASSWORD : ${DB_PASSWORD}
|
||||
|
||||
```
|
||||
Аналогично со другими сервисами:
|
||||
|
||||
### mediawiki
|
||||
|
||||
```
|
||||
image: mediawiki:latest # образ MediaWiki
|
||||
container_name: mediawiki_app
|
||||
volumes: # см. конец файла
|
||||
- ./mediawiki_data:/var/www/html/mediawiki
|
||||
ports:
|
||||
- "8088:80"
|
||||
restart: always
|
||||
```
|
||||
|
||||
### Wordpress
|
||||
|
||||
```
|
||||
depends_on:
|
||||
- db
|
||||
image: wordpress:latest
|
||||
hostname: wp_app
|
||||
container_name: wp_app
|
||||
volumes: # см. конец файла
|
||||
- wordpress_data:/var/www/html
|
||||
ports:
|
||||
- "8000:80"
|
||||
restart: always
|
||||
user: www-data
|
||||
environment: # секция настроек для подключения wordpress к БД
|
||||
TZ: "Europe/Moscow"
|
||||
WORDPRESS_DB_HOST: ${DB_HOST}
|
||||
WORDPRESS_DB_USER: ${DB_USER}
|
||||
WORDPRESS_DB_PASSWORD: ${DB_PASSWORD}
|
||||
WORDPRESS_DB_NAME: ${DB_NAME}
|
||||
```
|
||||
# Скриншот работы
|
||||
Панель консоли
|
||||
![](1.png "")
|
||||
|
||||
# ВК
|
||||
https://vk.com/video256017065_456239870?list=ln-qWUdZke5z53x940ZHv
|
66
vaksman_valerya_lab_1/docker-compose.yaml
Normal file
66
vaksman_valerya_lab_1/docker-compose.yaml
Normal file
@ -0,0 +1,66 @@
|
||||
services:
|
||||
db: # контейнер базы данных
|
||||
image: mariadb:latest # самая свежая версия MySql
|
||||
hostname: wp_database # хост контейнера внутри стистемы докер
|
||||
container_name: wp_database # имя контейнера с системе docker
|
||||
volumes: # см. конец файла
|
||||
- db_data:/var/lib/mysql
|
||||
restart: always
|
||||
environment: # cекция настроек для БД
|
||||
TZ: "Europe/Moscow"
|
||||
MYSQL_ROOT_PASSWORD: somewordpress
|
||||
MYSQL_DATABASE: ${DB_NAME}
|
||||
MYSQL_USER: ${DB_USER}
|
||||
MYSQL_PASSWORD: ${DB_PASSWORD}
|
||||
|
||||
phpmyadmin: # СУБД для БД
|
||||
depends_on: # запускаем после MySql
|
||||
- db
|
||||
image: phpmyadmin # скачиваем уже существующие образы для построения и запуска наших контейнеров
|
||||
hostname: php_my_admin
|
||||
container_name: php_my_admin
|
||||
volumes: # см. конец файла
|
||||
- php_my_admin_data:/var/www/html
|
||||
ports:
|
||||
- 8080:80
|
||||
restart: always
|
||||
environment:
|
||||
PMA_ARBITRARY: 1 # разрешение на подключения к любому серверу
|
||||
TZ: "Europe/Moscow"
|
||||
PMA_HOST: ${DB_HOST} # сразу заходим под нашими паролями и учёткой
|
||||
PMA_USER : ${DB_USER}
|
||||
PMA_PASSWORD : ${DB_PASSWORD}
|
||||
|
||||
wordpress: # контейнер wordpress
|
||||
depends_on: # запускаем после MySql
|
||||
- db
|
||||
image: wordpress:latest # самая свежая версия MySql
|
||||
hostname: wp_app
|
||||
container_name: wp_app
|
||||
volumes: # см. конец файла
|
||||
- wordpress_data:/var/www/html
|
||||
ports:
|
||||
- "8000:80"
|
||||
restart: always
|
||||
user: www-data
|
||||
environment: # секция настроек для подключения wordpress к БД
|
||||
TZ: "Europe/Moscow"
|
||||
WORDPRESS_DB_HOST: ${DB_HOST}
|
||||
WORDPRESS_DB_USER: ${DB_USER}
|
||||
WORDPRESS_DB_PASSWORD: ${DB_PASSWORD}
|
||||
WORDPRESS_DB_NAME: ${DB_NAME}
|
||||
|
||||
mediawiki: # контейнер mediawiki
|
||||
image: mediawiki:latest # образ MediaWiki
|
||||
container_name: mediawiki_app
|
||||
volumes: # см. конец файла
|
||||
- ./mediawiki_data:/var/www/html/mediawiki
|
||||
ports:
|
||||
- "8088:80"
|
||||
restart: always
|
||||
|
||||
volumes: # для локального хранения сессионных данных из работы контейнеров
|
||||
db_data: {}
|
||||
wordpress_data: {}
|
||||
php_my_admin_data: {}
|
||||
mediawiki: {}
|
Loading…
Reference in New Issue
Block a user