使用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容器无法自动启动

dockerroot绑定,启动的时候能够自动启动标记为-d的容器,但是podman不行,需要进行额外的操作,详细看这篇文章。总之就是麻烦,不如docker这么简单直接。

总结

由于一直使用root进行登录,非常容易被攻击挂马,改用其他用户能够显著改善这个问题,但是需要谨慎处理podman与docker之间的兼容性问题。

Podman与docker兼容性问题的更多相关文章

  1. Docker Vs Podman

    翻译自 Chetansingh 2020年4月24日的博文<Docker Vs Podman> [1] 容器化的一场全新革命是从 Docker 开始的,Docker 的守护进程管理着所有的 ...

  2. Podman and Buildah for Docker users

    转自:https://developers.redhat.com/blog/2019/02/21/podman-and-buildah-for-docker-users/ I was asked re ...

  3. podman初试-和docker对比

    podman初试-和docker对比 1,什么是docker? Docker 是一个开源的应用容器引擎,属于 Linux 容器的一种封装,Docker 提供简单易用的容器使用接口,让开发者可以打包他们 ...

  4. Docker 与 Podman 容器管理的比较

    翻译自 Paul Ferrill 2020年9月1日的文章<Compare Docker vs. Podman for container management> [1] Docker 和 ...

  5. docker的平替--podman

    前言 我们都知道,docker这个东西,是CaaS(Container as a Service,容器即服务)的通常解法.我们使用docker来管理容器的生命周期,比如镜像的生成.容器的管理和定制(D ...

  6. 选择 podman 的理由, 以及它和 Kubernetes , Docker 的区别

    转载自https://zhuanlan.zhihu.com/p/506265757 前言 大家好,我是 Liangdi, podman 4.x 版本已经发布了, 我也从 docker 开始向 podm ...

  7. Podman容器技术基础

    Podman容器技术基础 目录 Podman容器技术基础 简介 安装 基础命令 简介 Podman 是一个开源的容器运行时项目,可在大多数 Linux 平台上使用.Podman 提供与 Docker ...

  8. Docker三剑客之Docker Compose

    一.什么是Docker Compose Compose 项目是Docker官方的开源项目,负责实现Docker容器集群的快速编排,开源代码在https://github.com/docker/comp ...

  9. Docker(二十六)-Docker Compose编排容器

    1. 前言 Docker Compose 是 Docker 容器进行编排的工具,定义和运行多容器的应用,可以一条命令启动多个容器. 使用Compose 基本上分为三步: Dockerfile 定义应用 ...

  10. Docker 学习记录笔记(一)

    Docker 一些简单的命令列表docker build -t friendlyhello . # Create image using this directory's Dockerfiledock ...

随机推荐

  1. SpringBoot+Docker +Nginx 部署前后端项目

    部署SpringBoot项目(通关版) 一.概述 使用 java -jar 命令直接部署项目的JAR包和使用Docker制作镜像进行部署是两种常见的部署方式.以下是对这两种方式的概述和简要的优劣势分析 ...

  2. 利用 Page Visibility API 优化网页性能与用户体验

    在现代 Web 开发中,用户可能会频繁切换标签页,或让网页处于后台运行.为了避免不必要的资源浪费并提升用户体验,合理利用 Page Visibility API 可以在页面不可见时暂停或减少资源的消耗 ...

  3. linux java 初始环境配置

    linux初始环境配置 1.设置IP 查看虚拟机ip地址:ip addr 修改ip地址 Vi /etc/sysconfig/network~scrips/ifcfg-ens33(不一定是33 动态的) ...

  4. Nuxt.js 应用中的 app:redirected 钩子详解

    title: Nuxt.js 应用中的 app:redirected 钩子详解 date: 2024/10/3 updated: 2024/10/3 author: cmdragon excerpt: ...

  5. 左值 <->右值

    左值引用指向左值 右值引用指向右值 int a = 5; int &ref_a = a; // 左值引用指向左值,编译通过 int &ref_a = 5; // 左值引用指向了右值,会 ...

  6. Trace32 simulator调试以及简单实用命令介绍

    目录 Trace32 Simulator debug Trace32工具配置 Trace32命令简介 memory class 常见命令索引 v.v使用实例 不同CPU运行信息查看 Trace32 S ...

  7. iOSwkwebView 打开 TXT/PDF 文件乱码的问题

    最近做资料文件下载下来并查看的时候,用 WKWebView 打开office 类型的文件的时候是没问题的,但是打开测试人员上传的一个 TXT/PDF 文件就出现了乱码问题,经过查看,应该是文件的编码问 ...

  8. 云原生周刊:2023 年 Java 开发人员可以学习的 25 大技术技能

    文章推荐 2023 年 Java 开发人员可以学习的 25 大技术技能 这篇文章为 Java 开发人员提供了 2023 年需要学习的一些重要技能,这些技能涵盖了现代 Java 开发.大数据和人工智能. ...

  9. 快速部署sqlserver AlwaysOn集群

    点击查看代码 丐版sqlserver集群 之前试过docker的,k8s的,然后发现,还是最朴素的是最简单的,希望有大佬能够汉化,他妈的,那些英文看得人要发癫啊. 前置准备,参照丐版pxc集群: ht ...

  10. 从零开始学逆向CTF比赛,免费参加,欢迎来玩!

    大家好,我是轩辕. 告诉大家一个好消息:我准备了一次逆向CTF比赛,面向所有人开放,无需购买课程,优秀的小伙伴还有奖励,参赛方式在文末会介绍,欢迎大家一起来玩. 举办这次CTF比赛,是为了检验大家从零 ...