Podman安装与使用

1.Podman简介

Podman是一个无守护进程的容器引擎,用于在Linux系统上开发、管理和运行OCI容器。

Podman的主要功能包括:

  1. 创建和管理容器:Podman可以创建、启动、停止和删除容器,以及管理容器的生命周期。
  2. 容器镜像管理:Podman可以下载、存储和导出容器镜像,以及创建基于镜像的容器。
  3. 容器网络管理:Podman可以创建和管理容器的网络连接,包括桥接网络和覆盖网络。
  4. 容器日志管理:Podman可以查看容器的日志信息,包括标准输出和错误输出。
  5. 容器资源管理:Podman可以限制容器的资源使用,包括CPU、内存和存储等。

Podman是一个命令行工具,提供了一个与Docker兼容的命令行界面。Podman控制下的容器可以由root或非特权用户运行,这增加了系统的安全性和灵活性。

总的来说,Podman是一个功能强大的容器管理工具,可以用于开发和运行OCI容器,无需使用Docker守护进程,具有轻量级和高效的特点。

2.Podman安装

下载

Podman安装 | (podman.io)icon-default.png?t=N7T8https://podman.io/docs/installation

先决条件:由于 Podman 使用 WSL,因此您需要最新版本的 Windows 10 或 Windows 11。在 x64 上,WSL 需要内部版本 18362 或更高版本,arm19041 系统需要 64 或更高版本。在内部,WSL 使用虚拟化,因此系统必须支持并启用硬件虚拟化。如果在 VM 上运行 Windows,则必须具有支持嵌套虚拟化的 VM。
安装Podman

安装 Windows Podman 客户端首先要下载 Podman Windows 安装。Windows安装程序是随每个Podman版本一起构建的,可以从官方 Github 发布页面下载。请务必下载 4.1 或更高版本。

下载后,只需运行exe文件,然后重新启动新终端。在新终端输入podman machine init

 如果重启输入 podman machine init 之后出现以下情况,可以再次关闭终端,再重启之后输入 podman machine init,就可以了

Error: head request failed: https://github.com/containers/podman-wsl-fedora/releases/latest/download/rootfs.tar.xz: Head "https://github.com/containers/podman-wsl-fedora/releases/latest/download/rootfs.tar.xz": read tcp 192.168.133.156:60309->20.205.243.166:443: wsarecv: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.

初始化过程完成后,可以启动和停止Podman

至此,Podman安装完成,关闭当前所有终端,重启新终端后会有如下界面,进入就可以正常使用了

 

Rootful&Rootless

在WSL 上,podman既可以在根用户(root)下运行,也可以在非特权用户(root less)下运行。为了与Linux上的Podman保持行为一致性,默认为无根。注意:有根容器和无根容器是不同的,彼此隔离。针对其中一个的Podman命令(例如Podman ps)不会代表另一个的结果/状态。

Podman 是一个容器引擎工具,允许用户在 Linux 上运行应用程序容器。通常,在 Linux 上运行容器需要 root 权限,但 Podman 可以允许非 root 用户使用容器。简单来说,如果你是一个非 root 用户,并且想要使用 Podman 运行容器,那么你可以直接安装和运行 Podman 软件,而无需获取 root 权限。这个功能非常有用,因为它可以避免不必要的安全风险和权限访问问题。

需注意,虽然 Podman 允许非 root 用户使用容器,但这也意味着您的容器将受到更多限制,例如无法运行全部操作系统等。因此,建议您在需要时与管理员协商并根据情况选择正确的权限。

Docker 默认情况下在 Linux 上是以 root 权限运行,这就意味着如果您想使用 Docker 运行容器,您必须作为 root 用户登录到系统中。这可能会带来一些安全风险,因为 root 用户拥有系统上所有资源的完全控制权,而这并不总是安全或必要的。

不过,Docker 也提供了对非 root 用户访问容器的支持。与 Podman 不同的是,Docker 要求您手动将非 root 用户添加到 docker 组中以实现这一点。这个方法需要管理员权限,并且需要特殊的配置才能正常使用。

与 Docker 相比,Podman 更适合需要以非 root 用户身份管理容器的用户。Podman 可以直接在普通用户下运行,无需任何特殊配置或添加用户到任何组中。这可以使整个容器生命周期更加安全和可靠。

总之,Podman 和 Docker 的区别在于如何允许非 root 用户访问容器。Podman 允许非 root 用户直接运行容器,而 Docker 则需要特殊配置和权限来实现类似的功能。

切换rootful

podman machine stop
podman machine set --rootful

切换rootless

podman machine stop
podman machine set --rootful=false

常用命令

 What is Podman? — Podman documentation

Podman用法与Docker用法十分类似,所以你用过Docker,Podman上手应该很快。

3.补充:

在centos中,也可以通过yum install podman来安装podman使用,不过这种方法下载的podman不是最新版本,而是比较旧的版本。比如在centos7.7.1908中,通过yum install podman下载安装podman的版本信息为1.6.4。

注意,由于上面centos的版本为centos7.7.1908,所以当centos使用overlay2存储驱动时无法正常使用1.6.4版本的podman,podman 1.6.4版本要想使用overlay存储驱动正常工作,centos版本要7.8以上才可以。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/122336.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WSL中为Ubuntu和Debian设置固定IP的终极指南

文章目录 **WSL中为Ubuntu和Debian设置固定IP的终极指南****引言/背景****1. 传统方法****2. 新方法:添加指定IP而不是更改IP****结论**WSL中为Ubuntu和Debian设置固定IP的终极指南 引言/背景 随着WSL(Windows Subsystem for Linux)的普及,越来越多的开发者开始在Windows…

77 # koa 中间件的应用

调用 next() 表示执行下一个中间件 const Koa require("koa");const app new Koa();app.use(async (ctx, next) > {console.log(1);next();console.log(2); });app.use(async (ctx, next) > {console.log(3);next();console.log(4); });app.use(async (ctx,…

说说 TCP的粘包、拆包

分析&回答 拆包和粘包是在socket编程中经常出现的情况, 在socket通讯过程中,如果通讯的一端一次性连续发送多条数据包,tcp协议会将多个数据包打包成一个tcp报文发送出去,这就是所谓的粘包。如果通讯的一端发送的数据包超过一…

MRI多任务技术及应用

目录 一、定量心血管磁共振成像(CMR)的改进方法二、磁共振多任务三、磁共振多任务的成像框架四、磁共振多任务的图像模型和采样和重建策略五、利用MR多任务进行快速三维稳态CEST(ss-CEST)成像5.1 利用MR多任务进行快速三维稳态CEST(ss-CEST)成像介绍5.2 …

【数据结构】链表

【数据结构】 链表 1.链表的概念及结构 链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。…

C# void 关键字学习

C#中void关键字是System.Void的别名; 可以将 void 用作方法(或本地函数)的返回类型来指定该方法不返回值; 如果C#方法中没有参数,则不能将void用作参数;这是与C语言不同的,C语言有…

rk3568 SDK的buildroot添加package

开发源码工程 首先进入<SDK>/app 目录下&#xff0c;在该目录下创建一个名为“mypackage”的文件夹。 在 mypackage 目录下创建一个.c 源文件 main.c&#xff0c;以及一个 Makefile 文件。 大家可以自己在 main.c 源文件中编写一个简单的测试代码&#xff0c;譬如打印一…

设计模式-建造者(生成器)模式

文章目录 简介建造者模式的核心概念产品&#xff08;Product&#xff09;建造者&#xff08;Builder&#xff09;指挥者&#xff08;Director&#xff09;建造者模式与其他设计模式的关系工厂模式和建造者模式uml对比 建造者模式的实现步骤建造者模式的应用场景spring中应用 建…

RabbtiMQ的安装与使用

一、安装Erlang与Rabbitmq 安装教程本教程是在centos8下试验的&#xff0c;其实linux系统的都差不多RabbitMQ官方&#xff1a;Messaging that just works — RabbitMQRabbitMQ是开源AMQP实现&#xff0c;服务器端用Erlang语言编写&#xff0c;Python、Ruby、 NET、Java、JMS、c…

软件架构之前后端分离架构服务器端高并发演进之路

软件架构之前后端分离架构&服务器端高并发演进之路 前后端分离架构从业务角度从质量属性从性能角度 服务器端关于不同并发量的演进之路1. 单体架构2. 第一次演进&#xff1a;应用服务器和数据库服务器分开部署3. 第二次演进&#xff1a;引入本地缓存和分部署缓存4. 第三次演…

录屏没有声音?录制声音,3招教你搞定

在录制屏幕内容时&#xff0c;声音是不可或缺的要素之一&#xff0c;可以有效地增强录制视频的表现力和传达效果。然而&#xff0c;有时候可能会遇到录屏没有声音的情况&#xff0c;这可能会让录制的视频失去一部分重要信息。本文将为您介绍录屏录声音的3种方法&#xff0c;帮助…

nios里面打开eclipse遇到Unresolved inclusion: “system.h“等问题

问题&#xff1a;在Nios中打开软核部分代码时&#xff0c;遇到一堆Unresolved inclusion: "system.h"等问题报错 原因&#xff1a;bsp文件和软核没关联&#xff0c;导致找不到头文件地址&#xff0c;关联一下就好 解决步骤&#xff1a; 右键bsp文件&#xff0c;点击…

肖sir__设计测试用例方法之等价类02_(黑盒测试)

设计测试用例方法之等价类02_&#xff08;黑盒测试&#xff09; 一、掌握常用的设计方法: 黑盒测试方法&#xff1a;等价类、边界值&#xff0c;状态迁移法、场景法、判定表、因果图、正交表&#xff0c;&#xff08;7种&#xff09; 经验测试方法&#xff1a;错误推测法、异常…

[数据集][目标检测]裸土识别裸土未覆盖目标检测数据集VOC格式857张2类别

数据集格式&#xff1a;Pascal VOC格式(不包含分割路径的txt文件和yolo格式的txt文件&#xff0c;仅仅包含jpg图片和对应的xml) 图片数量(jpg文件个数)&#xff1a;857 标注数量(xml文件个数)&#xff1a;857 标注类别数&#xff1a;2 标注类别名称:["luotu","n…

数学建模:相关性分析

&#x1f506; 文章首发于我的个人博客&#xff1a;欢迎大佬们来逛逛 数学建模&#xff1a;相关性分析 文章目录 数学建模&#xff1a;相关性分析相关性分析两变量的相关分析PearsonSpearmanKendall tua-b 双变量关系强度测量的指标相关系数的性质代码实现example偏相关分析 相…

尚硅谷SpringMVC (9-13)

九、HttpMessageConverter HttpMessageConverter &#xff0c;报文信息转换器&#xff0c;将请求报文转换为 Java 对象&#xff0c;或将 Java 对象转换为响应报文 HttpMessageConverter提供了两个注解和两个类型&#xff1a; RequestBody &#xff0c; ResponseBody &#xff…

使用Docker安装和部署RabbitMQ

&#x1f680; 1 拉取RabbitMQ Docker镜像 首先&#xff0c;使用Docker命令从Docker Hub拉取RabbitMQ官方镜像。打开终端并运行以下命令&#xff1a; docker pull rabbitmq&#x1f680; 2 创建RabbitMQ容器 一旦镜像下载完成&#xff0c;使用以下命令创建RabbitMQ容器&…

linux复习笔记01(小滴课堂)

1.安装CentOs7系统 点击下一步在自定义硬件中&#xff1a; 我们可以删除我们不使用的&#xff0c;后续如果需要再加上即可。 然后我们就可以开启这台虚拟机了。 我们可以进行下载cetos7. 这里选择简体中文就可以。 时间的设置。 可以开启下网络。 在这里选择设置root密码&#…

高忆管理:证券账户国债逆回购怎么操作?

国债逆回购的本质就是一种短期贷款&#xff0c;个人经过国债回购商场把自己的资金借出去&#xff0c;取得固定的利息收益&#xff0c;那么&#xff0c;证券账户国债逆回购怎样操作&#xff1f;怎样在股票账户上买国债逆回购&#xff1f;下面高忆管理为我们准备了相关内容&#…

嵌入式面试笔试刷题(day14)

文章目录 前言一、进程控制块1.PCB控制块的作用2.PCB的存储位置 二、进程的三级映射三、return , exit, pthread_exit四、pthread_join作用五、互斥锁和信号量的区别六、怎么判断链表是否有环总结 前言 本篇文章继续我们的刷题之路。 一、进程控制块 这里只讲解进程的PCB控制…