安装工具链
在上一节,我们对 Podman、Buildah 和 Skopeo 进行了概要介绍。这一节,我们来看看如何把它们安装到现有的系统中。对于 CentOS/Fedora、Debian/Ubuntu、Arch Linux 等主流 Linux 发行版来说,这些工具都提供了二进制包。为简便起见,我们仅介绍通过包管理器安装的方法,因为这是最为快捷和省时的安装方式。另外,对于 CentOS 而言,因为其中的包较旧,所以还需要额外安装一些包。
通过包管理器安装
在 CentOS 或 Fedora 中,我们可以利用 yum
或 dnf
包管理器来安装 Podman、Buildah 和 Skopeo。以 CentOS 7.6 为例,我们执行以下命令将安装这些工具:
xiaodong@centos:~$ sudo yum install podman buildah skopeo
待安装完成,我们再执行下面的命令来验证它们确实可用:
xiaodong@centos:~$ podman --version
podman version 0.12.1.2
xiaodong@centos:~$ buildah --version
buildah version 1.5 (image-spec 1.0.0, runtime-spec 1.0.0)
xiaodong@centos:~$ skopeo --version
skopeo version 0.1.31
对 Debian 或 Ubuntu 而言,情况稍有不同,我们需要先添加一个额外的仓库源。以 Ubuntu 18.04 为例,我们执行以下命令把 ppa 仓库源添加到系统:
xiaodong@ubuntu:~$ sudo apt install dirmngr software-properties-common
xiaodong@ubuntu:~$ sudo add-apt-repository ppa:projectatomic/ppa
然后,我们在 Ubuntu 上安装这些工具,并验证其版本:
xiaodong@ubuntu:~$ sudo apt update
xiaodong@ubuntu:~$ sudo apt install podman buildah skopeo
xiaodong@ubuntu:~$ podman --version
xiaodong@ubuntu:~$ buildah --version
xiaodong@ubuntu:~$ skopeo --version
在 Arch Linux 上,我们可以通过 pacman
安装这些工具,安装完毕后同样进行验证:
xiaodong@arch:~$ sudo pacman -S podman buildah skopeo
xiaodong@arch:~$ podman --version
xiaodong@arch:~$ buildah --version
xiaodong@arch:~$ skopeo --version
CentOS 额外安装
因为 CentOS 7.6 中的 shadow-utils
包比较旧,其中没有 newuidmap
和 newgidmap
,而且也缺少 slirp4netns
,所以需要执行下面的额外安装步骤[1]:
xiaodong@centos:~# curl -o /etc/yum.repos.d/vbatts-shadow-utils-newxidmap-epel-7.repo https://copr.fedorainfracloud.org/coprs/vbatts/shadow-utils-newxidmap/repo/epel-7/vbatts-shadow-utils-newxidmap-epel-7.repo
xiaodong@centos:~# yum install shadow-utils46-newxidmap slirp4netns