Docker: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock

Ponsuyambu Velladurai picture Ponsuyambu Velladurai · Dec 17, 2017 · Viewed 199.8k times · Source

I am new to docker. I just tried to use docker in my local machine(Ubuntu 16.04) with Jenkins.

I configured a new job with below pipeline script.

node {
    stage('Build') {
      docker.image('maven:3.3.3').inside {
        sh 'mvn --version'
      }
    }
}

But it fails with below error.

enter image description here

Answer

austingray picture austingray · Jan 25, 2018

The user jenkins needs to be added to the group docker:

sudo usermod -a -G docker jenkins

Then restart Jenkins.

Edit

If you arrive to this question of stack overflow because you receive this message from docker, but you don't use jenkins, most probably the error is the same: your unprivileged user does not belong to the docker group.

You can do:

sudo usermod -a -G docker alice

or whatever your username is.

You can check it at the end doing grep docker /etc/group and see something like this:

docker:x:998:alice

in one of the lines.

Then change your users group ID to docker:

newgrp docker