мета-данные страницы
Контейнеризация в Docker
Развертывание приложений в Docker
Полное руководство по установке Docker, загрузке локальных образов и оркестрации сервисов через Docker Compose.
1
Подготовка носителя с образами
Для загрузки образов без интернета, примонтируйте ISO-образ с данными в вашем гипервизоре (например, как виртуальный CD/DVD привод).
Узнайте, под каким именем устройство определилось в системе (обычно sr0 или sr1):
Copy
lsblk
Создайте директорию для монтирования и примонтируйте устройство:
Copy
mkdir /mnt/имя_вашего_устройства mount /dev/имя_вашего_устройства /mnt/имя_вашего_устройства
2
Установка и запуск Docker
Установите основные пакеты: сам движок Docker и утилиту Compose для управления сложными проектами.
Copy
apt-get update && apt-get install -y docker-ce docker-compose
Сразу же добавьте службу в автозагрузку и запустите её:
Copy
systemctl enable --now docker
3
Загрузка образов (Docker Load)
Перейдите в директорию примонтированного диска, где лежат архивы с образами, и загрузите их в локальный реестр Docker.
Copy
cd /mnt/имя_вашего_устройства/путь_до_образов docker load -i образ_приложения.tar docker load -i образ_базы_данных.tar
4
Создание конфигурации (docker-compose.yml)
Создайте рабочую директорию проекта и откройте файл оркестратора. В нем строго важны отступы (используйте пробелы, а не табы).
Copy
mkdir ~/docker-project cd ~/docker-project vim docker-compose.yml
Наполните файл следующей структурой, определяющей базу данных и веб-приложение:
Copy
services:
db:
image: имя_образа_бд:тег
container_name: имя_контейнера_бд
restart: always
environment:
# далее идут все переменные контейнера в формате "название переменной: значение"
DB_USER_VARIABLE: значение_пользователя
DB_PASS_VARIABLE: значение_пароля
DB_NAME_VARIABLE: значение_имени_бд
testapp:
image: имя_образа_веб_приложения:тег
container_name: имя_веб_контейнера
restart: always
ports:
# Проброс порта (Внешний_хост:Внутренний_контейнер)
- "8080:8000"
environment:
# далее идут все переменные контейнера в формате "название переменной: значение"
APP_DB_HOST: db
APP_DB_USER: значение_пользователя
APP_DB_PASS: значение_пароля
depends_on:
- db
5
Запуск и тестирование
Находясь в директории с файлом docker-compose.yml, запустите сборку и старт сервисов в фоновом режиме (ключ -d):
Copy
docker compose up -d
Убедитесь, что все контейнеры запущены и работают без перезагрузок (статус Up):
Copy
docker ps
Перейдите в веб-браузер с любой клиентской машины и откройте адрес приложения, используя порт, который вы пробросили наружу:
Copy
http://IP_адрес_сервера:8080