PaaS系统/容器skopeo、Buildah、Podman、Libpod介绍

以下为你介绍的PaaS系统/容器都可用在Linux系统上:skopeo(操作容器镜像/镜像库的命令行工具)、Buildah(构建 OCI 镜像的工具)、Podman(容器 pod 管理工具)、Libpod(创建容器 pod 的库与工具)。

1、skopeo(操作容器镜像/镜像库的命令行工具)

PaaS系统/容器skopeo、Buildah、Podman、Libpod介绍

skopeo 是一个命令行工具,用于对容器镜像和镜像库执行各种操作,支持使用 OCI 镜像与原始的 Docker v2 镜像。

skopeo 使用 API​​ V2 注册表,例如 Docker 注册表、Atomic 注册表、私有注册表、本地目录和本地 OCI 布局目录。skopeo 不需要运行守护进程,它可以执行的操作包括:

通过各种存储机制复制镜像,例如,可以在不需要特权的情况下将镜像从一个注册表复制到另一个注册表。

检测远程镜像并查看其属性,包括其图层,无需将镜像拉到本地。

从镜像库中删除镜像。

当存储库需要时,skopeo 可以传递适当的凭据和证书进行身份验证。

下载地址:https://github.com/containers/skopeo

2、Buildah(构建 OCI 镜像的工具)

PaaS系统/容器skopeo、Buildah、Podman、Libpod介绍

Buildah 是一个用于构建 OCI(Open Container Initiative)镜像的工具。

Buildah 提供了一个命令行工具,可用于:

从零开始或使用镜像创建工作容器。

从工作容器或 Dockerfile 中的指令创建镜像。

可以采用 OCI 镜像格式或传统的上游 Docker 镜像格式构建镜像。

挂载工作容器的根文件系统以进行操作。

卸载工作容器的根文件系统。

使用容器的根文件系统的更新内容作为文件系统层来创建新镜像。

删除工作容器或镜像。

重命名本地容器。

例子:

From ./examples/lighttpd.sh(https://github.com/containers/buildah/blob/master/examples/lighttpd.sh):

$ cat > lighttpd.sh <<"EOF"

#!/usr/bin/env bash -x

ctr1=$(buildah from "${1:-fedora}")

## Get all updates and install our minimal httpd server

buildah run "$ctr1" -- dnf update -y

buildah run "$ctr1" -- dnf install -y lighttpd

## Include some buildtime annotations

buildah config --annotation "com.example.build.host=$(uname -n)" "$ctr1"

## Run our server and expose the port

buildah config --cmd "/usr/sbin/lighttpd -D -f /etc/lighttpd/lighttpd.conf" "$ctr1"

buildah config --port 80 "$ctr1"

## Commit this container to an image name

buildah commit "$ctr1" "${2:-$USER/lighttpd}"

EOF

$ chmod +x lighttpd.sh

$ sudo ./lighttpd.sh

下载地址:https://github.com/containers/buildah

3、Podman(容器 pod 管理工具)

PaaS系统/容器skopeo、Buildah、Podman、Libpod介绍

Podman 是 Libpod 的一部分,它的定义可以简单用这个命令表示:`alias docker=podman`

Libpod 是一个创建容器 pod 的工具和库,它包含 pod 管理工具 Podman,Podman 管理 pod、容器、容器镜像和容器卷。

在较高的层面上,Libpod 和 Podman 的作用范围如下:

支持多种镜像格式,包括 OCI 和 Docker。

支持多种方式下载镜像,包括信任和镜像验证。

容器镜像管理,管理镜像层、覆盖文件系统等。

全面管理容器生命周期。

支持 pod 管理容器组。

pos 和容器的资源隔离。

与 CRI-O 集成以共享容器和后端代码。

支持 Fedora、RHEL 与 Ubuntu 等的不同版本。

Roadmap:

1]、允许 Podman CLI 使用 Varlink 后端连接到远程 Podman 实例。

2]、将 Libpod 集成到 CRI-O 中以替换其现有的容器管理后端。

3]、进一步改进 Podman pod 命令。

4]、无根(rootless)容器的进一步改进。

下载地址:https://podman.io/

4、Libpod(创建容器 pod 的库与工具)

Libpod 是一个用于创建并运行 OCI(Open Container Initiative)容器 pod 的库和工具,容器 pod 概念由 Kubernetes 发扬光大。可参考上面Podman的介绍。

下载地址:https://github.com/containers/libpod

注明

以上就是PaaS系统/容器skopeo、Buildah、Podman、Libpod的介绍内容,这些PaaS系统/容器都能使用在Linux操作系统中。

栏目相关文章