Macos 无法使用JENKINS用户调用DOCKER

Macos 无法使用JENKINS用户调用DOCKER,macos,shell,docker,jenkins,Macos,Shell,Docker,Jenkins,我正在尝试运行docker命令,作为使用shell的jenkins作业的一部分。我得到了一个标准错误 “尝试连接到位于的Docker守护程序套接字时,权限被拒绝unix:///var/run/docker.sock: Get:dial unix/var/run/docker.sock:connect:permission denied” 我在这方面需要一些帮助 1.如何找到可添加到JENKINS全局配置的docker安装路径 2.解决此权限问题的变通方法(以sudo用户/任何其他特定用户身份运行

我正在尝试运行docker命令,作为使用shell的jenkins作业的一部分。我得到了一个标准错误 “尝试连接到位于的Docker守护程序套接字时,权限被拒绝unix:///var/run/docker.sock: Get:dial unix/var/run/docker.sock:connect:permission denied”

我在这方面需要一些帮助 1.如何找到可添加到JENKINS全局配置的docker安装路径 2.解决此权限问题的变通方法(以sudo用户/任何其他特定用户身份运行)

我已经尝试过将JENKINS用户添加到admin组、staff组和Make administrator中。但是,事实上没有任何帮助。我仍然得到标准误差

在终端上也尝试了以下代码 sudo-u jenkins docker图片

输出: 尝试连接到处的Docker守护程序套接字时,权限被拒绝unix:///var/run/docker.sock: Get:dial unix/var/run/docker.sock:connect:权限被拒绝

我希望运行此代码时不会出现错误。只有到那时,我的詹金斯管道才能完成

  • 要查找docker的安装路径,只需运行
    哪个docker
    。通常,它已经安装在标准路径中的某个位置,因此Jenkins可能已经有了访问权限。当您收到“权限被拒绝”错误消息时,Jenkins似乎已经在使用正确的docker可执行文件

  • 根据您使用的发行版或操作系统,您很可能需要将jenkins用户添加到
    docker
    组,例如
    sudo usermod-aG docker jenkins
    。要找出您需要的组,请运行:

    $ ls -l /var/run/docker.sock
    srw-rw---- 1 root docker 0 Apr 30 16:20 /var/run/docker.sock
    
    在第二行中,您可以看到docker.sock所属的组。将jenkins用户添加到该组