Контейнеры (Docker) и CI/CD работают мощно вместе — контейнеры обеспечивают согласованные окружения для сборки и тестирования и неизменяемые артефакты развёртывания (образы), а конвейеры CI/CD собирают, тестируют и развёртывают эти образы. Контейнеры решают ключевые проблемы согласованности в процессе доставки.
Контейнеры как согласованные окружения для сборки и тестирования
→ Run pipeline jobs INSIDE containers → the build/test environment is CONSISTENT and
reproducible (same tools/versions every time, locally and in CI)
→ No "works on my machine" / "works in CI but not locally" environment differences
→ Easy to define the exact environment (a container image with the needed tools)
