如何在CentOS 7和Fedora 31/30/29上安装Podman

本指南描述了如何在CentOS 7 / Fedora 31/30/29上安装Podman。 Podman是用于开发,管理和执行的无守护程序容器引擎。 OCI Linux系统上的容器。 Docker和Podman之间的主要区别是Podman没有守护程序。

对于Ubuntu,请检查:如何在Ubuntu上安装podman

Podman还使用容器运行时,例如runc,但是启动的容器是podman进程的直接后代。这种类型的体系结构具有以下优点:

  • 应用的Cgroup或安全性约束仍将控制容器。不管podman命令应用的cgroup约束如何,启动的容器都会直接接收相同的约束。
  • 使用此模型可以使用高级系统功能。可以通过将podman放在systemd单位文件中来完成,从而完成更多工作。

以下工具集可以协同工作并使用容器,而无需一直运行守护进程。

  • Buildua 促进构建OCI图像
  • Scopeo 在Docker注册表,Atomic注册表,私有注册表,本地目录和本地OCI布局目录中共享/搜索容器映像。
  • Podman,无需守护程序即可运行容器。

在CentOS 7 / Fedora 31/30/29上安装Podman

可以在Fedora和CentOS上游存储库中使用podman软件包。

--------- CentOS --------------
$ sudo yum -y install podman

---------- Fedora --------------
$ sudo dnf install -y podman

使用rpm命令查看已安装软件包的详细信息。

$ rpm -qi podman
 Name        : podman
 Version     : 0.12.1.2
 Release     : 2.git9551f6b.el7.centos
 Architecture: x86_64
 Install Date: Sat 15 Jun 2019 01:43:33 PM EAT
 Group       : Unspecified
 Size        : 33654116
 License     : ASL 2.0
 Signature   : RSA/SHA256, Wed 13 Feb 2019 11:56:49 PM EAT, Key ID 24c6a8a7f4a80eb5
 Source RPM  : podman-0.12.1.2-2.git9551f6b.el7.centos.src.rpm
 Build Date  : Wed 13 Feb 2019 08:05:29 PM EAT
 Build Host  : x86-02.bsys.centos.org
 Relocations : (not relocatable)
 Packager    : CentOS BuildSystem http://bugs.centos.org
 Vendor      : CentOS
 URL         : https://github.com/containers/libpod
 Summary     : Manage Pods, Containers and Container Images
 Description :
 Manage Pods, Containers and Container Images
 libpod provides a library for applications looking to use
 the Container Pod concept popularized by Kubernetes.

安装后,您可以查看有关主机,当前存储统计信息和podman构建的信息。

$ podman info
host:
  BuildahVersion: 1.6-dev
  Conmon:
    package: podman-0.12.1.2-2.git9551f6b.el7.centos.x86_64
    path: /usr/libexec/podman/conmon
    version: 'conmon version 1.12.0-dev, commit: b909c9e1a3e8f14d5694a118fb9c0c0325a31d4f-dirty'
  Distribution:
    distribution: '"centos"'
    version: "7"
  MemFree: 461684736
  MemTotal: 3872858112
  OCIRuntime:
    package: runc-1.0.0-59.dev.git2abd837.el7.centos.x86_64
    path: /usr/bin/runc
    version: 'runc version spec: 1.0.0'
  SwapFree: 0
  SwapTotal: 0
  arch: amd64
  cpus: 2
  hostname: techwiz-app-server
  kernel: 3.10.0-957.10.1.el7.x86_64
  os: linux
  rootless: false
  uptime: 831h 27m 5.82s (Approximately 34.62 days)
insecure registries:
  registries: []
registries:
  registries:
  - registry.access.redhat.com
  - docker.io
  - registry.fedoraproject.org
  - quay.io
  - registry.centos.org
store:
  ContainerStore:
    number: 0
  GraphDriverName: overlay
  GraphOptions:
  - overlay.override_kernel_check=true
  GraphRoot: /var/lib/containers/storage
  GraphStatus:
    Backing Filesystem: extfs
    Native Overlay Diff: "true"
    Supports d_type: "true"
  ImageStore:
    number: 0
  RunRoot: /var/run/containers/storage

尝试提取高山Linux映像。

$ podman pull alpine
Trying to pull registry.access.redhat.com/alpine:latest...Failed
Trying to pull docker.io/alpine:latest...Getting image source signatures
Copying blob sha256:e7c96db7181be991f19a9fb6975cdbbd73c65f4a2681348e63a141a2192a5f10
 2.63 MB / 2.63 MB [========================================================] 0s
Copying config sha256:055936d3920576da37aa9bc460d70c5f212028bda1c08c0879aedf03d7a66ea1
 1.48 KB / 1.48 KB [========================================================] 0s
Writing manifest to image destination
Storing signatures
055936d3920576da37aa9bc460d70c5f212028bda1c08c0879aedf03d7a66ea1

检查下载的图像列表。

$ podman images
REPOSITORY                 TAG      IMAGE ID       CREATED       SIZE
docker.io/library/alpine   latest   055936d39205   5 weeks ago   5.8 MB

在CentOS 7 / Fedora 31/30/29上使用Podman

现在,您已经在CentOS 7和Fedora系统上安装了podman,接下来的内容是如何使用它。有一个指南。

如何使用Podman和Libpod运行Docker容器

使用Podman设置Docker容器注册表并加密SSL

结论

Podman对集装箱化的未来有很多希望。实际上,Red Hat不仅从OpenShift中删除了Docker容器引擎。 Docker容器引擎也已被删除。 docker 命令,完全来自Red Hat Enterprise Linux 8。感谢您的阅读。

还要检查以下内容:

如何在Fedora / CentOS上设置Docker Private Registry

适用于Kubernetes和Docker容器的最佳存储解决方案

如何在CentOS / Fedora上安装Docker

如何在Minishift中运行本地Openshift集群

使用MicroK8和Snap部署轻量级Kubernetes

Sidebar