Issue
I have installed docker on ubuntu 14.04, it told me installed successfully. Then I entered sudo docker version
, it returned
Client:
Version: 1.9.1
API version: 1.21
Go version: go1.4.2
Git commit: a34a1d5
Built: Fri Nov 20 13:12:04 UTC 2015
OS/Arch: linux/amd64
Cannot connect to the Docker daemon. Is the docker daemon running on this host?
I entered sudo service docker status
, I got
docker start/running, process 8063
I tried sudo docker images
and sudo docker info
, I got the same reply:
Cannot connect to the Docker daemon. Is the docker daemon running on this host?
I do not know why it returned this, I tried to pull ubuntu using sudo docker pull ubuntu
, and got
Using default tag: latest
Cannot connect to the Docker daemon. Is the docker daemon running on this host?
Please tell me how can I solve this problem, how can I pull and run docker image. And is docker -d
the same as docker deamon
?
Solution
You need to add your current user to docker
group like following:
sudo usermod -aG docker <your username>
Also, you can use USER
environment variable like:
sudo usermod -aG docker $USER
Then restart the system. As the docker documentation says:
The docker daemon binds to a Unix socket instead of a TCP port. By default that Unix socket is owned by the user root and other users can access it with
sudo
. For this reason, docker daemon always runs as the root user.To avoid having to use
sudo
when you use thedocker
command, create a Unix group calleddocker
and add users to it. When the docker daemon starts, it makes the ownership of the Unix socket read/writable by thedocker
group.
Answered By - Ali Dehghani Answer Checked By - Dawn Plyler (WPSolving Volunteer)