当前位置: 首页 > 知识库问答 >
问题:

拨打unix/var/run/docker。sock:connect:权限被拒绝-Docker守护程序套接字-Ubuntu(ec2)上的Jenkins

长孙沈义
2023-03-14

我正在尝试构建然后在Jenkins上运行docker映像。我在AWS ec2服务器上的ubuntu上设置了Jenkins。当我尝试构建时,我会收到这个错误:

为了便于参考,我还附上了我的詹金斯档案。

pipeline {
    agent any
    stages {
        stage('Start') {
        steps {
            echo 'Starting to build the docker-react-app.'
        }
        }
        stage('building docker image') {
        steps {
            sh 'sudo docker build -t docker-react-app .'
        }
        }
        stage('runing docker image') {
        steps {
            sh 'sudo docker run -dp 3001:3000 docker-react-app'
        }
        }
    }
}

我正在使用Jenkins的默认管理员帐户。

我还将Jenkins用户添加到docker组。但这并没有解决问题。我还通过运行以下程序验证了这一点:

cat /etc/group | grep docker

其输出:

docker:x:998:ubuntu,jenkins

如果你需要任何进一步的信息,请告诉我。

共有2个答案

段干茂实
2023-03-14

尝试通过目标服务器上的jenkins用户运行管道脚本,也许您应该将jenkins用户添加到根组

汝岳
2023-03-14

错误表明当前用户无法访问docker引擎,因为您没有访问unix套接字以与引擎通信的权限
要解决此问题:
请在任何shell中运行以下命令:
sudo usermod-a-G docker$USER注意:请完全重新启动计算机,并重新启动jenkins
完成此步骤后:完全注销您的帐户并重新登录

有关更多信息:https://docs.docker.com/engine/install/linux-postinstall/

 类似资料: