智传网优云课堂,专注分享IT技术
与IT技术爱好者一起共同学习进步

无root权限运行docker

1. 前言

本文主要介绍新一代的Docker管理工具,Podman、Skopeo、 Buildah,它允许用户无root权限运行Docker。

使用docker 6年后,我把它删除了。

为什么呢?

因为我在使用的过程中反复遇到的事件触发的,在这个事件中,Docker守护进程在多个内核上使用了100%的CPU,这使得主机实际上不可用。

这种情况以前发生过几次,可能是由于脚本已经失控,启动了太多的容器。 我从来没有真正深入到它的底层,因为我必须运行一个命令来关闭所有容器并重新启动守护进程。如果没有kill -9命令,守护进程将无法重新启动,所以我认为已经受了。

无论如何,我并不一定要为此责怪Docker,但它确实为我之前听到的一个论点增加了力量:

为什么Docker需要一个守护进程呢?

2. Docker三大新工具Podman、Skopeo、 Buildah

这三个工具主要是RedHat推动的,它们可以完成我需要Docker做的所有事情。它们不需要守护进程或访问具有root特权的组。

2.1 Podman

Podman替换了大多数子命令(run, push, pull等)的Docker命令。 因为它不需要守护进程,并且使用用户命名空间来模拟容器中的root,所以不需要连接到具有root权限的套接字,这是Docker长期以来被关注的一个问题。

Podman是什么

2.2 Buildah

Buildah构建OCI映像。令人困惑的是,podman build也可以用来构建Docker映像,但是它的速度非常慢,默认情况下使用vfs存储驱动程序会占用大量磁盘空间。buildah bud (build using Dockerfile)对我来说要快得多,并且使用了overlay存储驱动程序。

Buildah的功能是什么

允许无root构建的用户名称空间是另一个让我想要的特性,非常吸引。我去年写了一篇关于如何让无root构建运行的文章,现在它已经为您提供了/etc/subuid和/etc/subgid设置,至少在Ubuntu上是这样。

Skopeo is a tool that allows you to work with Docker and OCI images by pushing, pulling, and copying images.

2.3 Skopeo

Skopeo是一个允许你使用Docker and OCI images工具

Skopeo的作用是什么

Skopeo是一个工具,允许您通过pushing, pulling, 和复制镜像来处理Docker和OCI镜像。

赞(0)
未经允许不得转载:Linux入门学习到精通 » 无root权限运行docker
分享到: 更多 (0)

学习QQ群:557371664

关注微信公众号自助视频学习

评论 抢沙发

评论前必须登录!