Podman与docker兼容性问题
使用Podman最好的地方就是支持rootless,也就是说用户不需要为root权限即可进行容器的管理操作。因此现在在CentOS 8及以后的版本中,默认使用Podman替代Docker,如果使用docker命令,会重定向到podman。
rootless很好,但是也带来了一些问题:
多余的提示
运行命令的时候,只要输入了docker,那么就会弹出提示:
docker Emulate Docker CLI using podman. Create /etc/containers/nodocker to quiet msg.
如果就是单纯的提示,那么问题不大。不过很多第三方的脚本执行的时候,没有考虑到podman的兼容性,出现了多余的提示会认为docker执行命令失败,我们需要去除它。方法也比较简单,按照提示,执行:
sudo echo >> /etc/containers/nodocker
出现一个空文件即可,后面执行文件就不出现提示了。
提示无法映射1024以下的特权端口
非root用户使用docker时,对外使用80端口系统提示非root用户无法使用1024以下的端口,需要添加设置:
#当前设置
sysctl net.ipv4.ip_unprivileged_port_start=80
#永久设置
echo "net.ipv4.ip_unprivileged_port_start=80" >> /etc/sysctl.conf
重启之后Podman容器无法自动启动
docker和root绑定,启动的时候能够自动启动标记为-d的容器,但是podman不行,需要进行额外的操作,详细看这篇文章。总之就是麻烦,不如docker这么简单直接。
总结
由于一直使用root进行登录,非常容易被攻击挂马,改用其他用户能够显著改善这个问题,但是需要谨慎处理podman与docker之间的兼容性问题。
Podman与docker兼容性问题的更多相关文章
- Docker Vs Podman
翻译自 Chetansingh 2020年4月24日的博文<Docker Vs Podman> [1] 容器化的一场全新革命是从 Docker 开始的,Docker 的守护进程管理着所有的 ...
- Podman and Buildah for Docker users
转自:https://developers.redhat.com/blog/2019/02/21/podman-and-buildah-for-docker-users/ I was asked re ...
- podman初试-和docker对比
podman初试-和docker对比 1,什么是docker? Docker 是一个开源的应用容器引擎,属于 Linux 容器的一种封装,Docker 提供简单易用的容器使用接口,让开发者可以打包他们 ...
- Docker 与 Podman 容器管理的比较
翻译自 Paul Ferrill 2020年9月1日的文章<Compare Docker vs. Podman for container management> [1] Docker 和 ...
- docker的平替--podman
前言 我们都知道,docker这个东西,是CaaS(Container as a Service,容器即服务)的通常解法.我们使用docker来管理容器的生命周期,比如镜像的生成.容器的管理和定制(D ...
- 选择 podman 的理由, 以及它和 Kubernetes , Docker 的区别
转载自https://zhuanlan.zhihu.com/p/506265757 前言 大家好,我是 Liangdi, podman 4.x 版本已经发布了, 我也从 docker 开始向 podm ...
- Podman容器技术基础
Podman容器技术基础 目录 Podman容器技术基础 简介 安装 基础命令 简介 Podman 是一个开源的容器运行时项目,可在大多数 Linux 平台上使用.Podman 提供与 Docker ...
- Docker三剑客之Docker Compose
一.什么是Docker Compose Compose 项目是Docker官方的开源项目,负责实现Docker容器集群的快速编排,开源代码在https://github.com/docker/comp ...
- Docker(二十六)-Docker Compose编排容器
1. 前言 Docker Compose 是 Docker 容器进行编排的工具,定义和运行多容器的应用,可以一条命令启动多个容器. 使用Compose 基本上分为三步: Dockerfile 定义应用 ...
- Docker 学习记录笔记(一)
Docker 一些简单的命令列表docker build -t friendlyhello . # Create image using this directory's Dockerfiledock ...
随机推荐
- linux内核调试痛点之函数参数抓捕记
1.linux内核调试工具crash并不能直接显示函数参数,而这个对调试又非常重要 下面是工作中一个实际的问题,我们的进程hang在如下一个内核栈中了,通过栈回溯可知是打开了一个nfs3的网盘文件或者 ...
- vue 赶鸭子上架入门笔记(一) 安装开发环境
准备接手一个 vue 的前端项目,从零开始学习 vue.目标不高大上,能看得懂代码,能进行简单的修改,改完能打包和部署. 首先解决 vue 开发环境的准备.访问 Node.js 官方网站,下载适合你操 ...
- 【解决方案】基于数据库驱动的自定义 TypeHandler 处理器
目录 前言 一.TypeHandler 简介 1.1转换步骤 1.2转换规则 二.JSON 转换 三.枚举转换 四.文章小结 前言 笔者在最近的项目开发中,频繁地遇到了 Java 类型与 JDBC 类 ...
- Nuxt.js 应用中的 page:transition:finish 钩子详解
title: Nuxt.js 应用中的 page:transition:finish 钩子详解 date: 2024/10/10 updated: 2024/10/10 author: cmdrago ...
- electron的两个进程
electron 有两个类别的进程,一个是主进程,另一个是渲染进程 主进程: 启动后一直存在的,相当于一个树的主干并不会展示出来,是看不到的所有跟系统资源交互的操作都在这里进行操控渲染进程,新建或销毁 ...
- 如何理解 .Net 中的 委托
// 委托 // 一种方法的声明和定义,也就是方法的占位符 // 一般使用在 参数 和 属性中 int Add(int a,int b) { return a + b; } // 定义委托的三种方法 ...
- KubeSphere v4 全解析:揭秘您最关心的 12 大热点问题
为了助力大家更顺畅地使用 KubeSphere v4,我们精心汇总了十二个开发者高频关注的热点问题,这些问题全面覆盖了功能特性.性能表现.兼容性考量.安全保障以及升级流程等关键方面.接下来,我们将为大 ...
- docker命令总结(一)
个人简单总结: 参数 用途 语法 示例 search 在docker hub中搜索镜像 docker search 镜像名称 docker search nginx pull 在docker hub中 ...
- Redhat 7.6安装11G RAC GI时遇到此类报错
环境:Redhat Linux 7.6 + Oracle 11.2.0.4 RAC 现象:图像化安装过程中,按照提示执行root.sh脚本,报错中断. 1. 具体现象 2. 定位问题 3. 解决问题 ...
- Linux 基础-文件及目录管理
本文大部分内容参看 <Linux基础>一书,根据自己的工程经验和理解加以修改.拓展和优化形成了本篇博客,不适合 Linux 纯小白,适合有一定基础的开发者阅读. 一,概述 在 Linux ...