如何在 Openshift 平台上通过 Jenkins 管道 运行 docker-in-docker?

How to run docker-in-docker through Jenkins pipeline on Openshift platform?

我正在尝试在 openshift 平台上的 jenkins 中构建 docker 图像。但是我得到 error 就像 is unix://var/run/docker docker daemon running?

unix://var/run/docker 是一个 Unix 域套接字。在 Unix 中,不同进程通过套接字进行通信,主机可以通过 var/run/docker.sock 文件与主 docker 进程进行通信。

现在就像 unix 中的所有内容一样,套接字也是文件,因此我们可以将权限授予可以与该文件通信的用户。

在你的情况下,你的 jenkins 用户没有访问此套接字文件的权限,因此无法与主 docker 进程通信。

要获得权限,您可以按照here所述执行以下操作:

创建一个 docker 组并将您的 jenkins 用户添加到 docker 组。

更多细节可以参考 Whosebug问题