Контейнеризация 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 настроен искать образа там по умолчанию. Также вы можете использовать свой личный реестр.