Розробники програмного забезпечення використовують контейнеризацію для розгортання програм у кількох середовищах без переписування програмного коду. Вони створюють програму один раз і розгортають її в декількох операційних системах.
Контейнеризація (Віртуалізація на рівні операційної системи, контейнерна віртуалізація, зонна віртуалізація) – метод віртуалізації, при якому ядро операційної системи підтримує кілька ізольованих екземплярів простору користувача замість одного.
Docker вирішує проблеми залежностей та робочого оточення Контейнери дозволяють запакувати в єдиний образ програму та всі її залежності: бібліотеки, системні утиліти та файли налаштування. Це полегшує перенесення програми на іншу інфраструктуру.