iis服务器助手广告广告
返回顶部
首页 > 资讯 > 服务器 >podman容器工具的具体使用
  • 715
分享到

podman容器工具的具体使用

2024-04-02 19:04:59 715人浏览 泡泡鱼
摘要

目录podman简介Podman和Docker的主要区别是什么?podman安装使用配置镜像加速相关工具podman简介 Podman是一个开源项目,可在大多数linux平台上使用并

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容器镜像的所有命令和功能,例如拉取和标记。它允许您在生产环境中创建,运行和维护从这些映像创建的容器。

官网:https://podman.io/
安装文档:Https://github.com/containers/libpod/blob/master/install.md
配置参考:https://github.com/containers/image/blob/master/docs/containers-reGIStries.conf.5.md

Podman和Docker的主要区别是什么?

  • dockers在实现CRI的时候,它需要一个守护进程,其次需要以root运行,因此这也带来了安全隐患。
  • podman不需要守护程序,也不需要root用户运行,从逻辑架构上,比docker更加合理。
  • 在docker的运行体系中,需要多个daemon才能调用到OCI的实现RunC。
  • 在容器管理的链路中,Docker Engine的实现就是dockerd
  • daemon,它在linux中需要以root运行,dockerd调用containerd,containerd调用containerd-shim,然后才能调用runC。顾名思义shim起的作用也就是“垫片”,避免父进程退出影响容器的运训
  • podman直接调用OCI,runtime(runC),通过common作为容器进程的管理工具,但不需要dockerd这种以root身份运行的守护进程。
  • 在podman体系中,有个称之为common的守护进程,其运行路径通常是/usr/libexec/podman/conmon,它是各个容器进程的父进程,每个容器各有一个,common的父则通常是1号进程。podman中的common其实相当于docker体系中的containerd-shim。

podman安装使用

使用Centos官方yum源进行安装

$ yum install -y podman
$ podman version
Version:            1.4.4
Remoteapi Version:  1
Go Version:         go1.10.3
OS/Arch:            linux/amd64

配置镜像加速

这里使用阿里云镜像加速器

cp /etc/containers/registries.conf{,.bak}

cat > /etc/containers/registries.conf << EOF
unqualified-search-registries = ["docker.io"]

[[registry]]
prefix = "docker.io"
location = "uyah70su.mirror.aliyuncs.com"
EOF

拉取镜像

$ podman pull centos
Trying to pull docker.io/library/centos...Getting image source signatures
Copying blob 8ba884070f61 done
Copying config 9f38484d22 done
Writing manifest to image destination
Storing signatures
9f38484d220fa527b1fb19747638497179500a1bed8bf0498eb788229229e6e1

运行容器

$ podman images
REPOSITORY                 TAG      IMAGE ID       CREATED        SIZE
docker.io/library/centos   latest   9f38484d220f   4 months ago   209 MB
$ podman run -itd --name test centos sleep 3600
1fc033bb22096008049709d70869d54e3fa9e4d72c6d098f4b5601fd6747a9b9
$ podman ps
CONTAINER ID  IMAGE                            COMMAND     CREATED        STATUS            PORTS  NAMES
1fc033bb2209  docker.io/library/centos:latest  sleep 3600  7 seconds ago  Up 6 seconds ago         test

配置为别名

$ echo "alias docker=podman" >> .bashrc
$ source .bashrc

$ docker ps -a
CONTAINER ID  IMAGE                            COMMAND     CREATED        STATUS            PORTS  NAMES
1fc033bb2209  docker.io/library/centos:latest  sleep 3600  7 minutes ago  Up 7 minutes ago         test

相关工具

Buildah

Buildah专注于构建OCI镜像。 Buildah的命令复制了Dockerfile中的所有命令。可以使用Dockerfiles构建镜像,并且不需要任何root权限。 Buildah的最终目标是提供更低级别的coreutils界面来构建图像。Buildah也支持非Dockerfiles构建镜像,可以允许将其他脚本语言集成到构建过程中。 Buildah遵循一个简单的fork-exec模型,不以守护进程运行,但它基于golang中的综合API,可以存储到其他工具中。虽然Podman也可以用户构建Docker镜像,单构建速度较慢。

Skopeo

Skopeo是一个工具,允许我们通过push,pull和复制镜像来处理Docker和OC镜像。

到此这篇关于podman容器工具的具体使用的文章就介绍到这了,更多相关podman使用内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: podman容器工具的具体使用

本文链接: https://www.lsjlt.com/news/163882.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • podman容器工具的具体使用
    目录podman简介Podman和Docker的主要区别是什么?podman安装使用配置镜像加速相关工具podman简介 Podman是一个开源项目,可在大多数Linux平台上使用并...
    99+
    2024-04-02
  • podman容器工具怎么用
    这篇文章将为大家详细讲解有关podman容器工具怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。podman简介Podman是一个开源项目,可在大多数Linux平台上使用并开源在GitHub上。Pod...
    99+
    2023-06-29
  • Java计时器工具StopWatch的具体使用
    目录前言Spring StopWatch实践例子源码分析lang3 StopWatch总结前言 平常,我们想要统计某一段代码块,或某一个方法的执行时间,最简单的是采用如下的方式。 ...
    99+
    2024-04-02
  • C++ deque容器的具体使用
     deque 是 double-ended queue 的缩写,又称双端队列容器。 和 vector 不同的是,deque 还擅长在序列头部添加或删除元素,所耗费的时间复杂...
    99+
    2024-04-02
  • C++中queue容器的具体使用
    目录一、queue容器1.1 简介1.2 常用接口一、queue容器 1.1 简介 ① queue是一种先进先出的数据结构,它有两个出口。 ② 队列容器允许一段新增元素,从另一端移...
    99+
    2023-05-13
    C++ queue容器 C++ queue
  • C++中map容器的具体使用
    目录一、map容器1.1 简介1.2 pair对组的创建1.3 map容器构造和赋值1.4 map容器大小和交换1.5 map容器插入和删除1.6 map容器查找和统计1.7 map...
    99+
    2023-05-13
    C++ map容器
  • Bootstrap5的断点与容器的具体使用
    目录1、Bootstrap5的断点1.1 移动优先1.2 Bootstrap的断点2、容器(Containers)2.1 容器就是用来盛东西的2.2 Bootstrap容器的分类2....
    99+
    2024-04-02
  • Redis可视化工具Redis Desktop Manager的具体使用
    项目中用到了redis,想查询redis中的数据,一直想找一个可视化工具,今天发现了Redis Desktop Manager,试用了一下,很好用。 1.下载 Redis Des...
    99+
    2024-04-02
  • R语言gsub替换字符工具的具体使用
    gsub()可以用于字段的删减、增补、替换和切割,可以处理一个字段也可以处理由字段组成的向量。 具体的使用方法为:gsub("目标字符", "替换字符", 对象) 在gsub函数中,...
    99+
    2024-04-02
  • Django中的Admin管理工具具体用法
    这篇文章主要讲解了“Django中的Admin管理工具具体用法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Django中的Admin管理工具具体用法”吧!Django admin自动管理工...
    99+
    2023-06-02
  • Bootstrap5的断点与容器的具体使用方法
    本篇内容介绍了“Bootstrap5的断点与容器的具体使用方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!目录Bootstrap5的断点1...
    99+
    2023-06-20
  • 容器管理工具 Rancher的安装与使用
    目录一、容器管理工具 Rancher 介绍二、Rancher 的安装三、Rancher 的初始化1. 添加环境2. 添加主机3. 添加应用四、应用部署1. Mysql 部署2. Ra...
    99+
    2022-11-13
    容器管理工具 Rancher Rancher安装
  • Quartz.NET的具体使用
    目录一、什么是Quartz.NET?二、Quartz.NET可以做什么?三、ASP.NET Core如何使用Quartz.NET?四、Quartz的cron表达式一、什么是Quart...
    99+
    2024-04-02
  • JavaScheduledExecutorService的具体使用
    目录1. 延迟不循环任务schedule方法2. 延迟且循环cheduleAtFixedRate方法3. 严格按照一定时间间隔执行``ScheduledExecutorService...
    99+
    2023-05-19
    ScheduledExecutorService
  • QtQFrame的具体使用
    目录1.概述2.常用数据接口3.示例1.概述 void setFrameShape(Shape) QFrame继承QWidget,QFrame类是具有框架的小部件的基类,例如QLab...
    99+
    2024-04-02
  • python__add__()的具体使用
    __add__(),  同一个类,两个对象相加的实现逻辑,重写 + class Myclass(object): def __init__(self,value):...
    99+
    2023-02-27
    python __add__()使用 python __add__
  • pythonhttpx的具体使用
    目录什么是 Httpx安装 Httpx发送 HTTP 请求发送异步 HTTP 请求设置请求标头设置请求参数发送请求体发送 JSON 数据设置超时错误处理证书验证使用代理上传文件使用 ...
    99+
    2023-05-14
    python httpx
  • np.unique()的具体使用
    目录一、np.unique() 介绍二、np.unique() 原型三、实例参考链接一、np.unique() 介绍 对于一维数组或者列表,np.unique() 函数 去除其中重复...
    99+
    2023-03-14
    np.unique()使用 np.unique()
  • python具名元组(namedtuple)的具体使用
    目录具名元组元组操作属性排序与字典比较数据类dataclass修饰继承NamedTuplecollections.namedtuple用于构造带字段名的元组。对应类型为typing....
    99+
    2023-03-21
    python具名元组
  • iOSDispatchSourceTimer定时器的具体使用
    目录1. 概述2. DispatchSourceTimer2.1 GCD Timer 创建2.2 GCD Timer 配置2.3 GCD Timer 部署任务2.4 GCD Time...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作