podman安装与简单使用

简介:

Podman是一个开源项目,可在大多数Linux平台上使用并开源在GitHub上。Podman是一个无守护进程的容器引擎,用于在Linux系统上开发,管理和运行Open Container Initiative(OCI)容器和容器镜像。Podman提供了一个与Docker兼容的命令行前端,它可以简单地作为Docker cli,简单地说你可以直接添加别名:alias docker = podman来使用podman。

Podman控制下的容器可以由root用户运行,也可以由非特权用户运行。Podman管理整个容器的生态系统,其包括pod,容器,容器镜像,和使用libpod library的容器卷。Podman专注于帮助您维护和修改OCI容器镜像的所有命令和功能,例如拉取和标记。它允许您在生产环境中创建,运行和维护从这些映像创建的容器。

安装podman

podman官网

https://podman.io/



使用centos官方yum源进行安装

仅只能用于centos系统

[root@server3 ~]# sudo yum -y install podman
[root@server3 ~]# which podman
/usr/bin/podman

应为podman没有守护进程所以下载完之后就可以直接用了

podman常用命令

拉取镜像

[root@server3 ~]# podman pull docker.io/library/centos
Trying to pull docker.io/library/centos...
Getting image source signatures
Copying blob a1d0c7532777 done
Copying config 5d0da3dc97 done
Writing manifest to image destination
Storing signatures
5d0da3dc976460b72c77d94c8a1ad043720b0416bfc16c52c45d4847e53fadb6
[root@server3 ~]# podman images
REPOSITORY                 TAG      IMAGE ID       CREATED        SIZE
docker.io/library/centos   latest   5d0da3dc9764   2 months ago   239 MB

查看镜像

[root@server3 ~]# podman images
REPOSITORY                 TAG      IMAGE ID       CREATED        SIZE
docker.io/library/httpd    latest   ea28e1b82f31   12 days ago    148 MB
docker.io/library/centos   latest   5d0da3dc9764   2 months ago   239 MB

运行容器

[root@server3 ~]# podman run -dt -p 8080:80/tcp docker.io/library/httpd
c1e8e2361b5f253910d2f681c036b882424fcfb4d80869d2ecf7af3e2514458a-d 后台运行
-t还添加了一个伪tty来在交互式shell中运行arrirycommands。

查看宿主机

[root@server3 ~]# ss -antl
State      Recv-Q Send-Q Local Address:Port               Peer Address:Port
LISTEN     0      128     *:8080                *:*
LISTEN     0      128     *:22                  *:*
LISTEN     0      100    127.0.0.1:25                  *:*
LISTEN     0      128    :::22                 :::*
LISTEN     0      100       ::1:25                 :::*

访问 192.168.244.142

列出正在运行的容器

[root@server3 ~]# podman ps
CONTAINER ID  IMAGE                           COMMAND           CREATED         STATUS             PORTS                 NAMES
c1e8e2361b5f  docker.io/library/httpd:latest  httpd-foreground  14 minutes ago  Up 14 minutes ago  0.0.0.0:8080->80/tcp  gallant_bartik

列出已创建的容器

[root@server3 ~]# podman ps -a
CONTAINER ID  IMAGE                           COMMAND           CREATED         STATUS             PORTS                 NAMES
c1e8e2361b5f  docker.io/library/httpd:latest  httpd-foreground  14 minutes ago  Up 14 minutes ago  0.0.0.0:8080->80/tcp  gallant_bartik

查看容器详细信息

[root@server3 ~]# podman inspect -l
[{"Id": "c1e8e2361b5f253910d2f681c036b882424fcfb4d80869d2ecf7af3e2514458a","Created": "2021-12-14T21:47:31.813997103+08:00","Path": "httpd-foreground","Args": ["httpd-foreground"],"State": {"OciVersion": "1.0.1-dev","Status": "running","Running": true,"Paused": false,"Restarting": false,-l  是指最新创建的容器

查看容器日志


[root@server3 ~]# podman logs c1e8e2361b5f       #容器id/容器名字/-l最新创建的容器
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 10.88.0.2. Set the 'ServerName' directive globally to suppress this message
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 10.88.0.2. Set the 'ServerName' directive globally to suppress this message
[Tue Dec 14 13:47:32.147279 2021] [mpm_event:notice] [pid 1:tid 139741947149632] AH00489: Apache/2.4.51 (Unix) configured -- resuming normal operations
[Tue Dec 14 13:47:32.147672 2021] [core:notice] [pid 1:tid 139741947149632] AH00094: Command line: 'httpd -D FOREGROUND'
192.168.244.1 - - [14/Dec/2021:13:59:12 +0000] "GET / HTTP/1.1" 200 45
192.168.244.1 - - [14/Dec/2021:13:59:12 +0000] "GET /favicon.ico HTTP/1.1" 404 196
192.168.244.1 - - [14/Dec/2021:14:00:04 +0000] "-" 408 -

查看容器的pids

使用podman top

[root@server3 ~]# podman top c1e8e2361b5f
USER       PID   PPID   %CPU    ELAPSED            TTY     TIME   COMMAND
root       1     0      0.000   23m47.967640709s   pts/0   0s     httpd -DFOREGROUND
www-data   7     1      0.000   23m47.967994123s   pts/0   0s     httpd -DFOREGROUND
www-data   8     1      0.000   23m47.968069766s   pts/0   0s     httpd -DFOREGROUND
www-data   9     1      0.000   23m47.9681237s     pts/0   0s     httpd -DFOREGROUND
www-data   91    1      0.000   11m34.968177599s   pts/0   0s     httpd -DFOREGROUND

停止容器

[root@server3 ~]# podman stop c1e8e2361b5f
c1e8e2361b5f253910d2f681c036b882424fcfb4d80869d2ecf7af3e2514458a
[root@server3 ~]# podman ps
CONTAINER ID  IMAGE  COMMAND  CREATED  STATUS  PORTS  NAMES

启动容器

[root@server3 ~]# podman ps
CONTAINER ID  IMAGE  COMMAND  CREATED  STATUS  PORTS  NAMES
[root@server3 ~]# podman ps -a
CONTAINER ID  IMAGE                           COMMAND           CREATED        STATUS                     PORTS                 NAMES
2b273ddfde54  docker.io/library/httpd:latest  httpd-foreground  3 minutes ago  Exited (0) 16 seconds ago  0.0.0.0:8080->80/tcp  frosty_ellis
[root@server3 ~]# podman start 2b273ddfde54
2b273ddfde5481c1ea412ef43f15c7b37ba4da08982697883db01dd44311c616
[root@server3 ~]# podman ps
CONTAINER ID  IMAGE                           COMMAND           CREATED        STATUS            PORTS                 NAMES
2b273ddfde54  docker.io/library/httpd:latest  httpd-foreground  3 minutes ago  Up 4 seconds ago  0.0.0.0:8080->80/tcp  frosty_ellis

重启容器

[root@server3 ~]# podman restart 2b273ddfde54
2b273ddfde5481c1ea412ef43f15c7b37ba4da08982697883db01dd44311c616
[root@server3 ~]# podman ps
CONTAINER ID  IMAGE                           COMMAND           CREATED        STATUS            PORTS                 NAMES
2b273ddfde54  docker.io/library/httpd:latest  httpd-foreground  5 minutes ago  Up 7 seconds ago  0.0.0.0:8080->80/tcp  frosty_ellis

移除容器

[root@server3 ~]# podman ps -a
CONTAINER ID  IMAGE                           COMMAND           CREATED         STATUS                     PORTS                 NAMES
c1e8e2361b5f  docker.io/library/httpd:latest  httpd-foreground  26 minutes ago  Exited (0) 42 seconds ago  0.0.0.0:8080->80/tcp  gallant_bartik
[root@server3 ~]# podman rm c1e8e2361b5f
c1e8e2361b5f253910d2f681c036b882424fcfb4d80869d2ecf7af3e2514458a
[root@server3 ~]# podman ps -a
CONTAINER ID  IMAGE  COMMAND  CREATED  STATUS  PORTS  NAMES
[root@serv

删除镜像

[root@server3 ~]# podman images
REPOSITORY                 TAG      IMAGE ID       CREATED        SIZE
docker.io/library/httpd    latest   ea28e1b82f31   12 days ago    148 MB
docker.io/library/centos   latest   5d0da3dc9764   2 months ago   239 MB
[root@server3 ~]# podman rmi 5d0da3dc9764
[root@server3 ~]# podman images
REPOSITORY                 TAG      IMAGE ID       CREATED        SIZE
docker.io/library/httpd    latest   ea28e1b82f31   12 days ago    148 MB

进入容器

[root@server3 ~]# podman exec -it 2b273ddfde54 /bin/bash
root@2b273ddfde54:/usr/local/apache2# ls
bin    cgi-bin  error   icons    logs
build  conf     htdocs  include  modules
root@2b273ddfde54:/usr/local/apache2#
root@2b273ddfde54:/# cd /
root@2b273ddfde54:/# ls
bin   etc   lib64  opt   run   sys  var
boot  home  media  proc  sbin  tmp
dev   lib   mnt    root  srv   usr
root@2b273ddfde54:/# 

create创建容器但不启动容器

[root@server3 ~]# podman create docker.io/library/httpd
cd7add96d89079e390fffd7dbb23b7715a27f580b3018478083dca5173f94bb4
[root@server3 ~]# podman ps -a
CONTAINER ID  IMAGE                           COMMAND           CREATED         STATUS            PORTS                 NAMES
cd7add96d890  docker.io/library/httpd:latest  httpd-foreground  45 seconds ago  Created                                 confident_joliot

cp 把宿主机上的文件复制到容器里

[root@server3 ~]# podman ps
CONTAINER ID  IMAGE                           COMMAND           CREATED         STATUS            PORTS                 NAMES
2b273ddfde54  docker.io/library/httpd:latest  httpd-foreground  12 minutes ago  Up 6 minutes ago  0.0.0.0:8080->80/tcp  frosty_ellis
[root@server3 ~]# ls
anaconda-ks.cfg
[root@server3 ~]# podman cp /root/anaconda-ks.cfg 2b273ddfde54:/opt
[root@server3 ~]# podman exec -it 2b273ddfde54 /bin/bash
root@2b273ddfde54:/usr/local/apache2# cd /opt/
root@2b273ddfde54:/opt# ls
anaconda-ks.cfg

podman 版本信息

[root@server3 ~]# podman info
host:BuildahVersion: 1.11.5CgroupVersion: v1Conmon:package: conmon-2.0.8-1.el7.x86_64path: /usr/bin/conmonversion: 'conmon version 2.0.8, commit: f85c8b1ce77b73bcd48b2d802396321217008762'Distribution:distribution: '"centos"'version: "7"MemFree: 147685376MemTotal: 1910071296OCIRuntime:name: runcpackage: runc-1.0.0-69.rc10.el7_9.x86_64path: /usr/bin/runcversion: 'runc version spec: 1.0.1-dev'SwapFree: 2147479552SwapTotal: 2147479552arch: amd64cpus: 2eventlogger: journaldhostname: server3kernel: 3.10.0-862.el7.x86_64os: linuxrootless: falseuptime: 3h 2m 23.67s (Approximately 0.12 days)
registries:blocked: nullinsecure: nullsearch:- registry.access.redhat.com- registry.redhat.io- docker.io
store:ConfigFile: /etc/containers/storage.confContainerStore:number: 2GraphDriverName: overlayGraphOptions: {}GraphRoot: /var/lib/containers/storageGraphStatus:Backing Filesystem: xfsNative Overlay Diff: "true"Supports d_type: "true"Using metacopy: "false"ImageStore:number: 2RunRoot: /var/run/containers/storageVolumePath: /var/lib/containers/storage/volumes

kill杀死进程

[root@server3 ~]# podman ps
CONTAINER ID  IMAGE                           COMMAND           CREATED            STATUS             PORTS                 NAMES
2b273ddfde54  docker.io/library/httpd:latest  httpd-foreground  About an hour ago  Up 54 minutes ago  0.0.0.0:8080->80/tcp  frosty_ellis
[root@server3 ~]# podman kill 2b273ddfde54
2b273ddfde5481c1ea412ef43f15c7b37ba4da08982697883db01dd44311c616
[root@server3 ~]# podman ps
CONTAINER ID  IMAGE  COMMAND  CREATED  STATUS  PORTS  NAMES

登录容器创库

[root@server3 ~]# podman login docker.io
Username: sktystwd
Password:
Login Succeeded![root@server3 ~]# cat /run/user/0/containers/auth.json
{"auths": {"docker.io": {"auth": "c2t0eXN0d2Q6d3kxNjExNjM5NjU1"}}

登出

[root@server3 ~]# podman logout docker.io
Removed login credentials for docker.io

podman安装与简单使用相关推荐

  1. 【网址收藏】podman安装及使用简单介绍

    什么是 Podman ? Podman 是一个开源的容器运行时项目,可在大多数 Linux 平台上使用.Podman 提供与 Docker 非常相似的功能.正如前面提到的那样,它不需要在你的系统上运行 ...

  2. Podman安装与运用

    什么是 Podman? Podman是一个无守护程序.开源的 Linux 原生工具,旨在使用 Open Containers Initiative ( OCI )容器和容器映像轻松查找.运行.构建.共 ...

  3. 数据脱敏d18n之一-podman安装

    无意之中(其实也是疑似有这方面的业务)接触到数据脱敏这个话题,在了解一翻后,发现国内基本都用厂家一体脱敏设备,对于我们来说学习成本太高,于是找到了一款开源软件d18n. 项目地址: https://g ...

  4. podman安装及使用命令

    文章目录 什么是Podman? Podman和Docker的主要区别是什么? Podman的使用与docker有什么区别? podman安装和基础命令 安装podman podman基础命令使用 po ...

  5. docker-compose的安装与简单使用

    docker-compose的安装与简单使用 docker-compose简介 屁话不这么多,直接开干 docker-compose安装步骤 由于docker-compose托管在github上面,所 ...

  6. 内核同步对性能的影响及perf的安装和简单的使用

    更多文章目录:点击这里 GitHub地址:https://github.com/ljrkernel 内核同步对性能的影响及perf的安装和简单的使用 看了一篇关于多线程应用程序性能分析的外文,结合之前 ...

  7. cakephp 安装mysql_CakePHP的安装的简单方法

    在对于CakePHP的作用有了初步认识后,我们可以下载CakePHP来进行一些使用.在安装前,要检查php的版本情况,防止CakePHP框架出现不适配的情况. 对于具体的框架组装,会涉及到依赖库和Co ...

  8. 怎么进入python官网-Python的安装及简单的使用

    原标题:Python的安装及简单的使用 像我们想要抓住一门好的编程语言,如何开始学习呢?我来简单介绍下python Python特性:语法简单,入门上手快,很多女神也在学习,方便找个编程的妹纸---- ...

  9. 刚安装的python如何使用-Python requests的安装与简单运用

    强烈推荐!requests官方文档已有了中文版,请见http://cn.python-requests.org/zh_CN/latest/ . requests是python的一个HTTP客户端库,跟 ...

最新文章

  1. 给一张表加一个自动编号字段_可视化仪表板快速入门教程,10分钟做一张销售分析仪表板...
  2. 详细图解JDK+Tomcat Web开发环境配置和HelloWorld程序
  3. Python 调用shell脚本
  4. 跨平台与云端创新,为企业和开发者开辟更广阔的未来
  5. NC51272 棋盘覆盖
  6. 移动流量转赠给好友_私域流量的五大认知误区
  7. 1065. 单身狗(25)-PAT乙级真题
  8. java关联查询实战_MyBatis初级实战之六:一对多关联查询
  9. python_csv文件写入
  10. 史上最全的TCP/IP协议原理
  11. 你自己不厉害,认识再多厉害的人都是白搭
  12. 星聚宝—云服务器快速搭建网站(阿里云服务器举例)
  13. IP地址欺骗 IP Spoof
  14. JavaScript 鼠标移入移出状态(onmouseover、onmouseout)
  15. 算法分析:时间和空间复杂度
  16. 大厂iOS APP都用了哪些第三方库?
  17. bga封装扇出过孔_Altium Designer BGA扇出
  18. matlab bwmorph spur,用python编写matlab的bwmorph(image,'spur')
  19. PICK菲仕乐锅具,轻松开启荤素搭配健康轻生活
  20. 深度Deep系统的使用问题记录

热门文章

  1. HTML5期末大作业:家乡旅游网站设计——家乡旅游-榆林子州(8页) 出游旅游主题度假酒店 计划出行网站设计
  2. 威马汽车欲曲线上市:沈晖已提前持股并任职,销量垫底、员工降薪
  3. 交作业:pygame中的库
  4. 十年 Java API 版权案终落地、Log4j 漏洞蛰伏八年后席卷全球,2021 年开源圈大事件盘点
  5. 轩尼诗成为NBA首个全球烈酒合作伙伴
  6. 人工智能-4计算机视觉和图像处理01
  7. 2023-6-2-DIS研究
  8. 这10款Chrome扩展 值得一试!
  9. 从苏宁电器到卡巴斯基第30篇:难忘的三年硕士时光 VI
  10. linux centos7 完整邮件服务器搭建及调用_2018_lcf