docker-py/dockerpy 使用安全吗?

is docker-py/dockerpy secure to use?

我一直在阅读有关通过安装 docker 套接字在 docker 容器中构建 docker 图像的安全问题。

就我而言,我正在通过 API 访问 docker , docker-py.

现在我想知道,在普通 ubuntu 主机(而不是 docker 容器)上使用 docker-py 构建图像是否存在安全问题,因为它也在docker 插座?

我也很困惑为什么 运行 docker 从命令行和这个 sdk 之间会有安全差异,因为它们都通过套接字?

感谢任何帮助。

没有区别,如果您有权访问套接字,则可以向 运行 具有与 dockerd 引擎访问权限匹配的容器发送请求。该引擎通常 运行 以 root 身份直接在主机上运行,​​因此您可以使用 API 直接在主机上获得 root 访问权限。

锁定它的方法包括 运行在一个容器内安装 dockerd 守护进程,但是该容器通常是特权的,它本身并不安全,因此您可以在另一个容器中获得 root 权限并使用特权在主机上获得根权限。

我见过的最好的选择包括 运行 无根引擎,并且从容器中逃逸只会让您访问守护程序是 运行 的用户。然而,意识到无根有它的缺点,包括需要预先配置主机来支持它,以及网络和文件系统配置是在用户级别完成的,这对功能和性能有影响。第二个好的选择是 运行 完全没有容器的构建 运行 时间,但是这有它自己的缺点,比如没有 Dockerfile 的一对一替换 [=10= ...