Контейнеризация — виртуализация на уровне операционной системы, при котором ядро операционной системы поддерживает несколько изолированных экземпляров пространства пользователя вместо одного. Эти экземпляры обычно называют контейнерами. С точки зрения пользователя, они полностью идентичны отдельному экземпляру операционной системы.
В отличие от виртуализации, при которой эмулируется аппаратное окружение и может быть запущен широкий спектр операционных систем, в контейнере может быть запущен экземпляр операционной системы только с тем же ядром, что и у хостовой операционной системы (все контейнеры узла используют общее ядро). При контейнеризации отсутствуют дополнительные ресурсные расходы на эмуляцию виртуального оборудования и запуск полноценного экземпляра операционной системы.
Podman — инструмент для создания, запуска и управления контейнерами стандарта OCI.
Для установки Podman в CentOS 8, введите команду:
dnf install podman -y
Чтобы просмотреть все доступные команды, введите:
podman --help
Чтобы просмотреть параметры, доступные для конкретной команды, введите:
podman [command] --help
Работа с образами
Контейнеры получают из образов (images). Загрузить эти образы можно из реестров, например: Docker Hub - компанией реализующей проект Docker или Red Hat Ecosystem Catalog - каталог образов экосистемы Red Hat.
Для просмотра поиска реестров, введите:
cat /etc/containers/registries.conf | grep -v "^#"
[registries.search]
registries = ['registry.access.redhat.com', 'registry.redhat.io', 'docker.io']
[registries.insecure]
registries = []
[registries.block]
registries = []
Для поиска образа операционной системы Ubuntu, введите:
podman search ubuntu
В столбце OFFICIAL OK указывает на образ, созданный и поддерживаемый компанией, реализующей проект.
Запустите команду pull, чтобы загрузить официальный образ Ubuntu:
podman pull ubuntu
Чтобы просмотреть образы, которые были загружены, введите:
podman images
Запуск контейнеров
Запустите контейнер с последним образом Ubuntu:
podman run -itd ubuntu
Чтобы просмотреть активные контейнеры, используйте команду:
podman ps
Для возможности входа в контейнер, используйте команду:
podman exec -it CONTAINER_ID bash
Чтобы остановить запущенный контейнер, используйте команду:
podman stop CONTAINER_ID
Чтобы удалить контейнер, который больше не потребуется, используйте команду:
podman rm CONTAINER_ID