Глава 9

Подготовка к развертыванию

Книга
Docker. Вводный курс

Docker: Up & Running

Это практическое руководство по Docker и Linux-контейнерам, которое дает разработчикам, администраторам, архитекторам и техническим менеджерам полное понимание инструментов Docker и того, как контейнеры могут улучшить практически все аспекты современной разработки, поставки и управления программным обеспечением

Авторы
Шон П. Кейн
Шон П. Кейн
Карл Маттиас
Карл Маттиас

Программа вечера

Подготовка к развертыванию
Docker в рабочих средах
Docker в конвейере DevOps

Хаос развёртывания

Docker дал стандартный форм‑фактор (контейнерыOCI-образ (Open Container Initiative) — это стандартизированный формат для упаковки и доставки программного обеспечения в контейнерах. Он обеспечивает полную совместимость между различными инструментами контейнеризации (например, Docker, Podman, CRI, containerd), позволяя запускать приложения в любой среде.), предсказуемость и автоматизацию. Теперь мы упаковываем приложение один раз и запускаем везде одинаково.
Представьте, как грузили товары до контейнеров. Наши приложения проходили тот же хаос.

Хаос масштабирования

Docker CLI

Одиночный контейнер или очень простая связка из 2–3 контейнеров на одной машине. Быстро для разработки.

Docker Compose

Несколько сервисов на одном хосте, нужна совместная конфигурация, зависимости и простой запуск/остановка. Идеален для локальной разработки и CI/CD.

Легковесные оркестраторы

Serverless‑платформы

Оркестраторы

Продакшн-окружение, кластер из многих узлов, требуется отказоустойчивость, автоматическое масштабирование, сложные сценарии развёртывания и управления.

Путь контейнера в продакшен

1. Локальная сборка

Разработка кода, локальный тест и написание Dockerfile

docker build -t myapp:local .
docker run myapp:local npm test

2. CI Сборка

Автоматическая сборка, тестирование и статический анализ

Jenkins / GitLab CI / GitHub Actions, Docker

3. Registry

Хранение образа в защищенном реестре с SBOM и подписью

docker login myregistry
docker push myregistry/myapp:${BUILD_ID}

4. Deploy

Доставка в кластер через GitOps-оператор

ssh user@server
docker pull myregistry/myapp:${BUILD_ID} && docker run -d -p 80:80 myregistry/myapp:${BUILD_ID}

Надёжное развёртывание

Воспроизводимость

Воспроизводимость подразумевает инфраструктуру как код и версионирование всего (образов, манифестов, конфигурации)

Автоматическая конфигурация

Автоматическая конфигурация означает отделение окружения от приложения: всё, что меняется между средами, идёт через переменные окружения, монтируемые файлы или внешние хранилища конфигурации.

Исполняемый пакет

Исполняемый пакет – это OCI‑образ, который содержит всё необходимое, кроме конфигурации.

new

Безопасность цепочки поставок

Подпись образов, отсутствие уязвимостей

Контейнер — это не просто запуск, а единый, воспроизводимый артефакт.
Никакой ручной настройки внутри образа.
Локальный запуск — это тот же конвейер, что и в CI и проде.
От коммита до деплоя — всё автоматизировано.
Манифесты развёртывания — такой же код, как и приложение.
Главная мысль
В 2026 году разработчик видит не только свой код, а весь путь от сборки до пользователя — и обеспечивает надёжность на каждом шаге.

Что далее

Подготовка к развертыванию Пройдено
Docker в рабочих средах
Docker в конвейере DevOps