Контейнеризация Docker
Введение
Что потребуется перед началом
План и задачи лабораторной
- Часть 1. Базовые команды Docker:
- Подготовка рабочего окружения.
- Образа -
docker pull
,docker images
. - Метки и удаление образа -
docker tag
. - Запускаем контейнер -
docker run
,docker logs
. - Списки контейнеров -
docker ps
. - Подключаемся к контейнеру -
docker exec
. - Список изменений -
docker diff
. - Завершаем контейнер -
docker stop
,docker kill
,docker rm
. - Не теряем данные -
docker volume
. - Контейнер Adminer.
- Сети -
docker network
.
- Часть 2. Продвинутая работа с Docker:
- Настройка базы данных.
- Запускаем Adminer.
- Запускаем свой сервис.
- Подробнее про сборку образа.
- Оптимизируем сборку.
- Многоэтапная сборка.
- Делимся образом
docker push
.
Задачи:
- Выполнить все действия, представленные в методических указаниях и ознакомиться с материалом.
- Продемонстрировать результаты выполнения преподавателю, быть готовым повторить выполнение части задач из лабораторной по требованию.
- Ответить на контрольные вопросы.
Отчет
Отчет в формате docx
. Обязательное содержимое отчета:
- Фамилия и инициалы студента, номер группы, номер варианта;
- План и задачи лабораторной работы;
- Краткое описание хода выполнения работы;
- Приложить очищенный вывод
history
выполненных команд.
Вступление
Для полного понимания рекомендуется ознакомиться с вводной статьей по Docker.
Docker демон
Docker демон (containerd
или dockerd
) обслуживает Docker API запросы (через сокет или по http) и управляет Docker-объектами (образа, контейнеры, сети, тома, и т.д.). Проверить: systemctl status dockerd
.
Docker клиент
Docker клиент (docker
) основной способ взаимодействия пользователя с Docker демоном (против работы напрямую с API). Когда вы запускаете команду docker run
, клиент отправляет сообщение процессу dockerd
(или containerd
), который его обрабатывает. Утилита docker
использует Docker API и может работать сразу с несколькими Docker демонами, не обязательно на локальной машине.
Docker Desktop
Docker Desktop приложение для Mac, Windows или Linux окружений, которое позволяет вам собирать и публиковать ваши контейнеризованные приложения и сервисы. Docker Desktop включает в себя Docker демон, Docker клиент, Docker Compose (с ним будем работать отдельно позже), Docker Content Trust, Kubernetes, и Credential Helper. Больше читайте в руководстве: Docker Desktop.
Docker registry
Docker registry (реестр) хранит Docker образа. Docker Hub - публичный реестр для общего пользования, и Docker настроен искать образа там по умолчанию. Также вы можете использовать свой личный реестр.