Docker для команды разработки: базовый гайд

Зачем контейнеры, Dockerfile, compose и как убрать «у меня работает» из словаря команды.

Docker для команды разработки: базовый гайд

Docker упаковывает приложение с зависимостями в образ, который одинаково запускается на ноутбуке разработчика, тестовом сервере и проде. Это снижает количество инцидентов «на проде другая версия PHP».

С чего начать

  1. Dockerfile для каждого сервиса — базовый образ, зависимости, команда запуска.
  2. docker-compose.yml — локально поднимаете app + БД + redis одной командой.
  3. .dockerignore — не копировать node_modules и .git в образ.
  4. Реестр — GitLab Container Registry или Docker Hub для хранения образов.

Правила для команды

  • Один Dockerfile на сервис, версии базовых образов фиксируйте по тегу, не latest.
  • Секреты — через переменные окружения или vault, не в образе.
  • Образы собирает CI, не разработчик вручную на проде.
Дальше

После Docker логичен GitLab CI для автоматической сборки. Разработка — услуги ITRTS.

Безопасность образов

Сканируйте образы на уязвимости (Trivy, встроенный сканер GitLab). Обновляйте базовые образы при выходе патчей. Не запускайте контейнеры от root в проде — используйте USER в Dockerfile.

Локально разработчики должны использовать те же версии compose, что и CI — файл версионируется в git.

CI и прод

Образ, собранный в CI, должен проходить те же тесты, что и локально. Используйте multi-stage build: в финальный образ не попадают исходники и dev-зависимости. Тегируйте образ хешем коммита, а не только latest.

Итог

Главное — не откладывать решение до аварии или срыва сроков. Зафиксируйте текущее состояние, определите ответственных и согласуйте бюджет с подрядчиком или внутренней командой. Команда ITRTS помогает на всех этапах: от консультации до внедрения и сопровождения. Актуальные тарифы — на странице прайса, связанные материалы — в разделе блога.

Дальше

Если тема критична для вашего бизнеса прямо сейчас — напишите нам через форму на сайте. Разберём ситуацию и предложим план без обязательств.

Начните с аудита текущей ситуации: зафиксируйте риски, сроки и бюджет. Мы в ITRTS сопровождаем 1С, серверы и разработку — , инфраструктура, разработка. Бесплатная первичная консультация поможет определить приоритеты.