我试图在我的macbook中运行Jenkins管道作业 . 我也有本地运行的docker实例 . 最初我得到了“ docker command not found " error while running the Jenkins Job. I fixed the error by adding a symlink " ln -f -s /Applications/Docker.app/Contents/Resources/bin/ /usr/local/bin* ”
我还应用了这两个更改,以便jenkins用户可以访问docker目录
-
chmod -R 777 /Users/myUserName/Library/Containers/com.docker.docker/
-
chmod -R 777 /Users/myUserName/Library/Containers/com.docker.helper/
I am getting below errors :
尝试在unix上连接到Docker守护程序套接字时获得权限被拒绝:///var/run/docker.sock:获取http://%2Fvar%2Frun%2Fdocker.sock/v1.27/containers/openjdk:8 / json:拨打unix /var/run/docker.sock:connect:权限被拒绝[Pipeline] sh [test]运行shell脚本docker pull openjdk:8警告:无法从守护进程获取默认注册表 endpoints (尝试拒绝权限被拒绝)在unix:///var/run/docker.sock连接到Docker守护程序套接字:获取http://%2Fvar%2Frun%2Fdocker.sock/v1.27/info:拨打unix /var/run/docker.sock :connect:权限被拒绝) . 使用系统默认值:https://index.docker.io/v1/尝试在unix:///var/run/docker.sock连接到Docker守护程序套接字时获得权限被拒绝:发布http://%2Fvar% 2Frun%2Fdocker.sock / v1.27 / images / create?fromImage = openjdk&tag = 8:拨打unix /var/run/docker.sock:connect:权限被拒绝[Pipeline]} [Pipeline] // node [Pipeline] End of Pipeline ERROR:脚本返回退出代码1完成:FAILURE
3 回答
这是一个docker权限问题 . 将jenkins用户添加到docker组,如下所示:
usermod -aG docker ${USER}
有什么方法可以解决这个问题,我上周面对它,我解决了但是
docker-compose
这个设置可以复制到docker
,你可以创建一个共享卷,指向主机/var/run/docker.sock
中docker.sock
的位置到你的docker.sock
的位置容器/var/run/docker.sock
. 像这样的东西:为了运作良好,您必须将
socket
sudo chown $USER:$USER /var/run/docker.sock
和docker
组的用户权限提供给docker
,如Innocent Anigbo所述 .这对我有用:docker run --rm -p 8080:8080 -p 4040:4040 -v /var/run/docker.sock:/var/run/docker.sock -v $ PWD / jenkins_home:/ var / jenkins_home logimethods /詹金斯