#Podman
什么是podman?
概览
podman是一个无需守护进程的开发、管理和运行OCI容器的引擎。Container可以运行在root权限下,或非root权限下。一个简单的对比:docker=podman。
详细介绍:
podman是一个开源的项目,可以应用于绝大多数的linux平台,目前在github上开源。podman是一个用于开发、管理和运行开源容器(OCI)和容器镜像的无守护进程引擎。podman提供了一个docker兼容的命令行工作,可以简单的称为docker cli。
在podman管理之下的容器可以运行在root特权模式下,也可以运行在非特权模式下。podman也可以管理整个容器的生态,包括Pods、containers、container images 和 使用libpod 库的 container 卷。podman着重的完善了命令行和相关函数帮助你去维护、修改 OCI容器镜像。像pulling和tagging。其允许你在生产环境中创建、运行、维护containers。
podman服务只能在linux平台下运行,但是其提供了rest api以便于mac和windows平台去调用。当前有一个可以运行在mac和windows平台上面允许远程去管理运行在linux平台上面的podman。
client: podman/mac_win_client.md at master · containers/podman · GitHub
概述和范围
在更高级别,libpod和podman的功能范围如下:
- 支持多个镜像格式,包括OCI和Docker镜像格式。
- 支持多个安全下载image的方式,包括信任和验证。
- 容器image管理(包括image层和文件系统)。
- 容器的全生命周期管理。
- 支持以组的方式管理多个pod。
- container和pod的资源隔离。
路线图:
- 允许podman CLI去使用REST API连接远程的podman services。
- 整合libpod到CRI-O去替换已存在的容器管理后端。
- 熟悉podman的pod命令行。
- 持续改进非特权容器。
安装
物料
Client:
MAC
Podman Server:
Centos7
Client Podman CLI 安装命令:
brew install podman
Podman Server 安装:
sudo curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable.repo https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/CentOS_7/devel:kubic:libcontainers:stable.repo
sudo yum -y install yum-plugin-copr
sudo yum -y copr enable lsm5/container-selinux
sudo yum -y install podman