Перейти к содержанию

Podman

Материал из Википедии — свободной энциклопедии
Podman
Логотип программы Podman
Скриншот программы Podman
Example of Podman commands
Тип OS-level virtualization
Автор Red Hat
Разработчик Cloud Native Computing Foundation
Написана на Go
Операционные системы Linux, Windows, macOS, FreeBSD
Последняя версия
Репозиторий github.com/containers/po…
Лицензия Apache-2.0 license
Сайт podman.io
Логотип Викисклада Медиафайлы на Викискладе

Podman (сокращение от pod manager) — это открытый инструмент для управления контейнерами, совместимый со стандартами Open Container Initiative (OCI). Разработанный компанией Red Hat, он используется для работы с контейнерами, образами, томами и подами в операционной системе Linux. Также поддерживается работа в macOS и Windows через виртуальную машину.

Podman основан на библиотеке libpod и предоставляет API для управления жизненным циклом ресурсов. Его интерфейс прикладного программирования (API) идентичен API Docker. В качестве альтернативы Docker Desktop предлагается графический интерфейс Podman Desktop.

Image
Интерфейс Podman Desktop, отображающий терминал контейнера

Первый публичный релиз Podman (v0.2) состоялся в 2018 году, а версия 1.0.0 была выпущена 16 января 2019 года.

Версия 1.0 Podman Desktop была выпущена 23 мая 2023 года.

На конференции KubeCon 2024 года Red Hat объявила о передаче Podman и Podman Desktop в фонд Cloud Native Computing Foundation (CNCF). К тому моменту Podman Desktop был загружен 1,5 миллиона раз. Проекты были официально приняты в CNCF 21 января 2025 года.

Популярность

[править | править код]

В опросе Stack Overflow 2025 года среди 20 070 профессиональных разработчиков 10,9 % респондентов указали, что использовали Podman в течение последнего года (для сравнения: Docker — 73,8 %, Kubernetes — 30,1 %).

Архитектура

[править | править код]

Podman является инструментом с «бездемонной» (daemonless) архитектурой. В отличие от таких систем, как Docker, использующих фоновую службу (демон) dockerd, Podman использует модель fork-exec, запуская процессы контейнеров напрямую. Это позволяет интегрировать контейнеры в стандартные системные инструменты управления процессами, такие как Systemd.

Podman поддерживает генерацию unit-файлов для Systemd (команда podman generate systemd) для автоматизации управления жизненным циклом контейнеров.

Интерфейс командной строки Podman практически идентичен Docker — большинство пользователей могут использовать псевдоним alias docker=podman для работы с контейнерами без изменения существующих сценариев автоматизации. Инструмент полностью поддерживает стандарты Open Container Initiative (OCI), что позволяет использовать образы из любых публичных и приватных реестров (например, Docker Hub или Quay.io).

Для обеспечения работы сторонних инструментов, использующих Docker API, Podman может запускать службу, эмулирующую Docker UNIX socket, что позволяет использовать такие утилиты, как Docker Compose.

Безопасность

[править | править код]

Podman позволяет запускать контейнеры без привилегий суперпользователя (rootless) — без прав суперпользователя или пользователя sudo. Это означает, что обычные пользователи могут создавать и управлять контейнерами без прав администратора, используя пространства имён Linux (namespaces).

  1. Release 5.8.2 — 2026.

Литература

[править | править код]
  • Walsh, Daniel. Podman in Action: Secure, Rootless Containers for Kubernetes, Microservices, and More. — Manning Publications, 2023. ISBN 9781633439689.
  • Arrichiello, Alessandro. Podman for DevOps / Alessandro Arrichiello, Gianni Salinetti. — Packt Publishing, 2022. ISBN 9781803248233.