---
title: 安装Podman
description: "如果集群中节点的OS使用openEuler系统，为确保应用程序的统一管理和部署，提高部署的一致性和可靠性，需要在ceph1~ceph3和client1节点上安装Podman。推荐在openEuler系统下安装Podman服务，本小节以在openEuler上安装高版本Podman为例进行说明。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengsdss/ecosystemEnable/Ceph/kunpengcephobject_DG_Ubuntu_04_0006.html
sourcePath: /source/zh/kunpengsdss/ecosystemEnable/Ceph/kunpengcephobject_DG_Ubuntu_04_0006.html
indexId: c53d28872ef832a910f74017cb6553807eb64fdca4e6b8a44566f8f2bee0c2b484
---
# 安装Podman

如果集群中节点的OS使用openEuler系统，为确保应用程序的统一管理和部署，提高部署的一致性和可靠性，需要在ceph1~ceph3和client1节点上安装Podman。推荐在openEuler系统下安装Podman服务，本小节以在openEuler上安装高版本Podman为例进行说明。

- Podman为Ceph容器化部署依赖工具，不同Podman版本与Ceph版本之间存在兼容问题。

- Ceph 17.2.x需要使用Podman 2.0及以上版本，openEuler-22.03-LTS-SP4社区源里Podman版本为3.4.+，本文以Podman 3.4.4为例进行说明。
- 安装过程需要联网，检查服务器联网情况。如需使用代理，推荐使用临时环境变量HTTP_PROXY和HTTPS_PROXY配置代理。
  1 2 export HTTP_PROXY=http://USERNAME:PASSWORD@192.168.0.1:3128 export HTTPS_PROXY=http://USERNAME:PASSWORD@192.168.0.1:3128

- 局域网组网时，Podman拉取镜像时需要配置信任镜像仓库。详见  配置Podman信任镜像仓库
。


#### 方式一：yum源直接安装

1. 直接通过yum源安装。
  1 yum install podman

2. 安装catatonit。
  1 2 3 4 5 6 7 8 yum install autoconf automake libtool -y git clone https://github.com/openSUSE/catatonit.git cd catatonit ./autogen.sh ./configure make make install cp catatonit /usr/libexec/podman/catatonit

3. 检查Podman安装情况。
  1 podman -v


#### 方式二：手动编译Podman

本小节以Podman 3.4.4版本为例进行说明如何手动编译Podman。


1. 下载依赖工具。
  1 yum install rpmdevtools python3-pyyaml -y

2. 构建Podman 3.4.4的RPM包。
  1 2 3 4 5 wget https://repo.openeuler.org/openEuler-22.03-LTS-SP2/source/Packages/podman-3.4.4-1.oe2203sp2.src.rpm --no-check-certificate rpmdev-setuptree rpm -ivUh podman-3.4.4-1.oe2203sp2.src.rpm yum-builddep -y /root/rpmbuild/SPECS/podman.spec rpmbuild -bb /root/rpmbuild/SPECS/podman.spec

3. 构建crun 1.4.5的RPM包。
  1 2 3 4 wget https://repo.openeuler.org/openEuler-22.03-LTS-SP2/source/Packages/crun-1.4.5-1.oe2203sp2.src.rpm --no-check-certificate rpm -ivUh crun-1.4.5-1.oe2203sp2.src.rpm yum-builddep -y /root/rpmbuild/SPECS/crun.spec rpmbuild -bb /root/rpmbuild/SPECS/crun.spec

4. 构建conmon 2.1.0的RPM包。
  1 2 3 4 wget https://repo.openeuler.org/openEuler-22.03-LTS-SP2/source/Packages/conmon-2.1.0-1.oe2203sp2.src.rpm --no-check-certificate rpm -ivUh conmon-2.1.0-1.oe2203sp2.src.rpm yum-builddep -y /root/rpmbuild/SPECS/conmon.spec rpmbuild -bb /root/rpmbuild/SPECS/conmon.spec

5. 安装所有的RPM包。
  1 2 cd /root/ yum install -y rpmbuild/RPMS/noarch/podman-docker-3.4.4-1.noarch.rpm rpmbuild/RPMS/aarch64/podman-remote-3.4.4-1.aarch64.rpm rpmbuild/RPMS/aarch64/podman-3.4.4-1.aarch64.rpm rpmbuild/RPMS/aarch64/crun-help-1.4.5-1.aarch64.rpm rpmbuild/RPMS/aarch64/crun-1.4.5-1.aarch64.rpm rpmbuild/RPMS/aarch64/conmon-2.1.0-1.aarch64.rpm rpmbuild/RPMS/aarch64/podman-help-3.4.4-1.aarch64.rpm rpmbuild/RPMS/aarch64/podman-gvproxy-3.4.4-1.aarch64.rpm rpmbuild/RPMS/aarch64/podman-plugins-3.4.4-1.aarch64.rpm

6. 安装catatonit。
  1 2 3 4 5 6 7 git clone https://github.com/openSUSE/catatonit.git cd catatonit ./autogen.sh ./configure make make install cp catatonit /usr/libexec/podman/catatonit

7. 启动Podman。
  1 2 3 4 systemctl daemon-reload systemctl enable podman systemctl start podman systemctl status podman

  Active为active（running）则表示成功启动Podman服务。


#### 配置Podman信任镜像仓库

局域网组网时，Podman从本地网络其他机器的镜像仓库上拉取镜像时，需要信任镜像仓库，避免https的安全校验造成程序异常。

需要调整配置如下，推荐只搭建一个镜像仓库，搭建步骤详见物理机中本地仓库搭建和镜像配置。

1. 打开/etc/containers/registries.conf文件。
  1 vi /etc/containers/registries.conf

2. 按“i”进入编辑模式，按照如下内容调整配置。
  1 2 3 4 5 6 7 8 unqualified-search-registries = ["[IP1]:5000", "[IP2]:5000", "quay.io"] short-name-mode="enforcing" [[registry]] location = "[IP1]:5000" insecure = true [[registry]] location = "[IP2]:5000" insecure = true

  其中[IP1]、[IP2] 分别为局域网内镜像仓库IP地址，根据实际情况设置信任多个仓库或只信任1个。

3. 按“Esc”键退出编辑模式，输入:wq!，按“Enter”键保存退出文件。


#### 配置安全证书（可选）

- 若下载Podman镜像时没有出现安全证书的问题，则无需配置，可跳过此步骤。安全证书异常时，会有类似如下报错：
  1 /usr/bin/podman: stderr Error: parsing image configuration: Get "https://xxxxx.xxx": x509: certificate signed by unknown authority

- 如果出现安全证书问题，请联系当前IT网格管理部获取正确的安全证书，以便正常访问网络。


1. 获取安全证书放到“root”目录下。
2. 拷贝证书到“/usr/local/share/ca-certificates/”目录下。
  1 2 mkdir -p /usr/local/share/ca-certificates/ cp HuaweiWebSecureInternetGatewayCA.crt /usr/local/share/ca-certificates/

  “HuaweiWebSecureInternetGatewayCA.crt”需要替换为网络管理员提供的正确的安全证书。

3. 更新系统证书信息。
  1 update-ca-certificates

4. 重启Podman服务。
  1 2 systemctl daemon-reload systemctl restart podman
