Podman#
Предупреждение
В Astra Linux Special Edition очередное обновление 1.8 программное обеспечение podman включено в состав основного репозитория.
Podman — инструмент командной строки с открытым исходным кодом, предоставляющий возможности поиска, сборки, передачи и запуска приложений в контейнерной изоляции. Функционально podman аналогичен системе контейнерной изоляции docker, но предоставляет дополнительные возможности по управлению группами контейнеров (т.н. оркестрация контейнеров, container orchestration) и может работать без прав доступа суперпользователя (root).
Предупреждение
По умолчанию podman использует в качестве средства контейнеризации библиотеку crun. В Astra Linux работа контейнеров поддерживается только при использовании контейнеризации runc, т.е. при работе в Astra Linux для запуска контейнеров следует использовать опции команды podman –runtime=runc и --cgroup-manager=cgroupfs.
Работа с контейнерами без прав суперпользователя имеет следующие особенности:
файлы непривилегированных пользователей хранятся в их домашних каталогах, в подкаталоге .local/share/containers;
непривилегированные пользователи по умолчанию не могут использовать привилегированные сетевые порты и некоторые команды;
Podman использует контейнеры стандарта Open Container Initiative (OCI), что обеспечивает совместимость с образами docker.
Основные пакеты
Пакет |
Версия |
Репозиторий |
Описание |
---|---|---|---|
podman |
5.1.1.astra1+ci1 |
installation |
Запуск контейнеров на основе OCI в подах |
Дополнительные пакеты
Пакет |
Версия |
Репозиторий |
Описание |
---|---|---|---|
podman-compose |
1.0.7~astra1+ci4 |
installation |
Создание и поддержка контейнеров из конфигураций, совместимых с docker-compose |
podman-toolbox |
0.0.99.3 |
installation |
Непривилегированная среда разработки с использованием контейнеров |
cockpit-podman |
67-1 |
extended |
Веб-интерфейс для управления и мониторинга контейнерами (плагин для Cockpit) |
Установка#
Для установки Podman следует перейти в интерфейс командной строки и выполнить:
Пункт 1#
установить пакет:
sudo apt install podman
Примечание
При работке с включенным мандатным управлением доступом (МРД) после установки пакета необходимо перезапустить пользовательскую сессию или перезагрузить операционную систему.
Термины#
Терминология podman совпадает с терминологией docker, описание в статье по Docker.
Дополнительно применяются термины:
под (pod) — группа контейнеров, выполняющихся совместно и разделяющих общие ресурсы. Подробное описание концепции подов доступно по ссылке: Pods;
регистр (registry) — служба, обеспечивающая хранение и распространение образов;
репозиторий (repository) — хранилище образов;
тэг (tag) — буквенно-цифровой идентификатор, присваиваемый образу в репозитории для дифференциации версий образов.
Основные команды#
Стандартный вызов инструмента имеет следующий синтаксис:
podman <опции> <podman-команда>
Где:
опции — необязательные модификаторы команд;
podman-команда — действие к исполнению. Команды при этом имеют собственные опции и аргументы и могут иметь собственные подкоманды, например docker pod create.
Стандартные команды podman в основном аналогичны командам по Docker.
Получить список опций и команд с их описанием можно выполнив команду:
podman --help
Подробные справки по podman-командам доступны в справочной системе man. Названия страниц справок формируются как podman-<команда>[-<подкоманда>].
Например, для команды attach справка может быть получена командой:
man podman-attach
А для команды podman create — командой:
man podman-pod-create
Полный список podman-команд с их описанием и описанием отличий от docker доступен по ссылке.