CentOS8系统新特性(1)--Podman容器(再见Docker)

0x1 CentOS8.x默认Podman容器管理软件

Podman 是一个开源的容器运行时项目,可在大多数 Linux 平台上使用。Podman 提供与 Docker 非常相似的功能。正如前面提到的那样,它不需要在你的系统上运行任何守护进程,并且它也可以在没有 root 权限的情况下运行。Podman 可以管理和运行任何符合 OCI(Open Container Initiative)规范的容器和容器镜像。Podman 提供了一个与 Docker 兼容的命令行前端来管理 Docker 镜像。
podman已经是CentOS8的默认容器软件,在CentOS8的镜像中,符合去Docker化的理念。既然RHEL 8/CentOS 8已经放弃了对Docker容器官方技术支持,那么容器管理员该怎么办呢?好在Red Hat的开发人员已经开发libpod一段时间了。Libpod是新的容器管理库,它包含管理pod、容器和容器映像所需的所有内容。

这个新解决方案称为Podman,它不需要容器守护进程,因为所有容器和pod都是作为子进程创建的。对于那些花了几周、几个月甚至几年时间来熟悉docker运行时的人来说,您没有什么好担心的,因为Podman CLI是基于docker CLI的。

1)CentOS8 安装





安装信息

KDUMP优化

KDUMP

系统分区

分区

网络设置

网络设置

软件选择

开始安装

root密码

安装中

重启

授权许可

结束配置

登陆画面

可选安装 在安装的时候可选容器管理工具 Podman

容器管理工具

2)CentOS8 安装Podman容器管理软件

CentOS8中dnf代替了yum 包管理软件

sudo dnf install -y podman
或
yum install -y podman
[root@Centos8 ~]# yum install -y podman
CentOS-8 - AppStream                                                                   1.2 MB/s | 6.0 MB     00:04
CentOS-8 - Base                                                                        610 kB/s | 4.0 MB     00:06
CentOS-8 - Extras                                                                      582  B/s | 2.1 kB     00:03
上次元数据过期检查:0:00:01 前,执行于 2020年01月24日 星期五 21时50分14秒。
Package podman-1.0.0-2.git921f98f.module_el8.0.0+58+91b614e7.x86_64 is already installed.
依赖关系解决。
=======================================================================================================================
 软件包                             架构          版本                                          仓库              大小
=======================================================================================================================
Upgrading:
 containernetworking-plugins        x86_64        0.8.1-2.module_el8.1.0+237+63e26edc           AppStream         20 M
 podman                             x86_64        1.4.2-5.module_el8.1.0+237+63e26edc           AppStream         11 M
安装依赖关系:
 podman-manpages                    noarch        1.4.2-5.module_el8.1.0+237+63e26edc           AppStream        180 k
安装弱的依赖:
 libvarlink                         x86_64        18-3.el8                                      BaseOS            44 k

事务概要
=======================================================================================================================
安装  2 软件包
升级  2 软件包

总下载:32 M
下载软件包:
CentOS-8 - Base                         196% [=========================================================================(1/4): podman-manpages-1.4.2-5.module_el8.1.0+237+63e26edc.noarch.rpm                  137 kB/s | 180 kB     00:01
(2/4): libvarlink-18-3.el8.x86_64.rpm                                                   34 kB/s |  44 kB     00:01
(3/4): podman-1.4.2-5.module_el8.1.0+237+63e26edc.x86_64.rpm                           4.9 MB/s |  11 MB     00:02
(4/4): containernetworking-plugins-0.8.1-2.module_el8.1.0+237+63e26edc.x86_64.rpm      4.0 MB/s |  20 MB     00:04
-----------------------------------------------------------------------------------------------------------------------
总计                                                                                   4.0 MB/s |  32 MB     00:07
警告:/var/cache/dnf/AppStream-a520ed22b0a8a736/packages/podman-manpages-1.4.2-5.module_el8.1.0+237+63e26edc.noarch.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID 8483c65d: NOKEY
CentOS-8 - AppStream                                                                   1.6 MB/s | 1.6 kB     00:00
导入 GPG 公钥 0x8483C65D:
 Userid: "CentOS (CentOS Official Signing Key) "
 指纹: 99DB 70FA E1D7 CE22 7FB6 4882 05B5 55B3 8483 C65D
 来自: /etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
导入公钥成功
运行事务检查
事务检查成功。
运行事务测试
事务测试成功。
运行事务
  准备中      :                                                                                                    1/1
  运行脚本    : containernetworking-plugins-0.8.1-2.module_el8.1.0+237+63e26edc.x86_64                             1/1
  Upgrading   : containernetworking-plugins-0.8.1-2.module_el8.1.0+237+63e26edc.x86_64                             1/6
  Installing  : libvarlink-18-3.el8.x86_64                                                                         2/6
  运行脚本    : libvarlink-18-3.el8.x86_64                                                                         2/6
  Installing  : podman-manpages-1.4.2-5.module_el8.1.0+237+63e26edc.noarch                                         3/6
  Upgrading   : podman-1.4.2-5.module_el8.1.0+237+63e26edc.x86_64                                                  4/6
  清理        : podman-1.0.0-2.git921f98f.module_el8.0.0+58+91b614e7.x86_64                                        5/6
  运行脚本    : podman-1.0.0-2.git921f98f.module_el8.0.0+58+91b614e7.x86_64                                        5/6
/var/tmp/rpm-tmp.B6dXMD:行1: /usr/bin/podman: 权限不够

  清理        : containernetworking-plugins-0.7.4-3.git9ebe139.module_el8.0.0+58+91b614e7.x86_64                   6/6
  运行脚本    : containernetworking-plugins-0.7.4-3.git9ebe139.module_el8.0.0+58+91b614e7.x86_64                   6/6
  验证        : podman-manpages-1.4.2-5.module_el8.1.0+237+63e26edc.noarch                                         1/6
  验证        : libvarlink-18-3.el8.x86_64                                                                         2/6
  验证        : containernetworking-plugins-0.8.1-2.module_el8.1.0+237+63e26edc.x86_64                             3/6
  验证        : containernetworking-plugins-0.7.4-3.git9ebe139.module_el8.0.0+58+91b614e7.x86_64                   4/6
  验证        : podman-1.4.2-5.module_el8.1.0+237+63e26edc.x86_64                                                  5/6
  验证        : podman-1.0.0-2.git921f98f.module_el8.0.0+58+91b614e7.x86_64                                        6/6

已升级:
  containernetworking-plugins-0.8.1-2.module_el8.1.0+237+63e26edc.x86_64
  podman-1.4.2-5.module_el8.1.0+237+63e26edc.x86_64

已安装:
  libvarlink-18-3.el8.x86_64                 podman-manpages-1.4.2-5.module_el8.1.0+237+63e26edc.noarch

完毕!

0x2 CentOS8 下通过Podman创建管理容器

1)Podman常见命令

[root@Centos8 ~]# podman pull ubuntu
Trying to pull docker.io/library/ubuntu...Getting image source signatures
Copying blob 19a861ea6baf done
Copying blob c63719cdbe7a done
Copying blob 5c939e3a4d10 done
Copying blob 651c9d2d6c4f done
Copying config ccc6e87d48 done
Writing manifest to image destination
Storing signatures
ccc6e87d482b79dd1645affd958479139486e47191dfe7a997c862d89cd8b4c0

2)Podman镜像管理

[root@Centos8 ~]# podman images
REPOSITORY                 TAG      IMAGE ID       CREATED      SIZE
docker.io/library/ubuntu   latest   ccc6e87d482b   9 days ago   66.6 MB
[root@Centos8 ~]#

3)Podman创建容器

[root@Centos8 ~]# podman ps -a
CONTAINER ID  IMAGE  COMMAND  CREATED  STATUS  PORTS  NAMES
[root@Centos8 ~]#
[root@Centos8 ~]# podman run docker.io/library/ubuntu:latest
[root@Centos8 ~]# podman ps -a
CONTAINER ID  IMAGE                            COMMAND    CREATED        STATUS                    PORTS  NAMES
23a1fd0b4a89  docker.io/library/ubuntu:latest  /bin/bash  6 seconds ago  Exited (0) 4 seconds ago         gallant_kowalevski
[root@Centos8 ~]#

#进入容器
[root@Centos8 ~]# podman run -i -t docker.io/library/ubuntu:latest
root@4fd02ab43ad5:/#
root@4fd02ab43ad5:/# ls
bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
root@4fd02ab43ad5:/#

4)Podman 停止容器

[root@Centos8 ~]# podman stop 4fd02ab43ad5
4fd02ab43ad5e9ebd2c9d6f0c5509b2ccef2c4d28fde09f9878d5e5d8e38405e

5)Podman 启动容器

[root@Centos8 ~]# podman start 4fd02ab43ad5
4fd02ab43ad5
[root@Centos8 ~]# podman ps -a
CONTAINER ID  IMAGE                            COMMAND    CREATED        STATUS                    PORTS  NAMES
4fd02ab43ad5  docker.io/library/ubuntu:latest  /bin/bash  6 minutes ago  Up 2 seconds ago                 vigorous_chandrasekhar
23a1fd0b4a89  docker.io/library/ubuntu:latest  /bin/bash  7 minutes ago  Exited (0) 7 minutes ago         gallant_kowalevski
[root@Centos8 ~]#

6)Podman 查看容器列表

[root@Centos8 ~]# podman ps -a
CONTAINER ID  IMAGE                            COMMAND    CREATED        STATUS                    PORTS  NAMES
4fd02ab43ad5  docker.io/library/ubuntu:latest  /bin/bash  6 minutes ago  Up 2 seconds ago                 vigorous_chandrasekhar
23a1fd0b4a89  docker.io/library/ubuntu:latest  /bin/bash  7 minutes ago  Exited (0) 7 minutes ago         gallant_kowalevski
[root@Centos8 ~]#

7)Podman查看容器详细信息

podman inspect 容器名

其他操作跟Docker操作类似

你可能感兴趣的:(CentOS8系统新特性(1)--Podman容器(再见Docker))