Контейнеры в программировании — это единый исполняемый пакет программного обеспечения, который объединяет код приложения со всеми связанными с ним конфигурационными файлами, библиотеками и зависимостями. habr.com
Некоторые особенности контейнеров:
- Автономность. cloud.vk.com Контейнер отделяет своё содержимое от операционной системы, благодаря чему приложение становится легко переносимым и может работать на любой платформе. cloud.vk.com
- Изоляция. pro-dgtl.ru Контейнеры изолируют приложения и их зависимости, что позволяет избежать конфликтов между разными проектами. pro-dgtl.ru
- Контроль ресурсов. cloud.vk.com Контейнеры используют для контроля ресурсов, за которые различные программные процессы могут конкурировать, например, объёма памяти или ресурсов процессора. cloud.vk.com
Выделяют два основных типа контейнеров: yandex.cloud
- Контейнеры приложений. yandex.cloud Используются для организации работы микросервисов с горизонтальной масштабируемостью. yandex.cloud Внутри каждого контейнера такой архитектуры запускается один процесс. yandex.cloud
- Контейнеры операционной системы. yandex.cloud Близки по особенностям работы к виртуальным машинам. yandex.cloud Нужны, чтобы хранить операционную систему и запускать несколько процессов одновременно. yandex.cloud
Процесс упаковки программного кода в контейнеры называется контейнеризацией. yandex.cloud