Что мы на нём делаем

Контейнеры — способ упаковки всего, что мы пишем. Бэкенд-сервис, задача по расписанию, окружение сборки — каждый из них представляет собой образ с зафиксированными внутри зависимостями, так что «у меня на машине работает» перестаёт быть категорией багов.

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

Где мы его применили

Вся наша бэкенд-разработка контейнеризована, включая сервисы за проектами из портфолио. Этот сайт тоже собирается и деплоится как образ контейнера.

Когда мы его рекомендуем

Для любого сервиса, который будет развёрнут не на той машине, где его написали, — то есть для всех. Цена — Dockerfile; отдача — воспроизводимая сборка и деплой, не зависящий от состояния сервера.

Где мы, наоборот, возразим — это контейнеризация локального процесса разработки, который и так прост. Если проект — один бинарник без зависимостей, контейнер вокруг цикла разработки добавит трения и почти ничего не даст. Выпускайте образ, но не обязательно разрабатывайте внутри него.

В продакшене эти образы работают на Kubernetes.