/var/run/docker.sock: permission denied while runn

2019-03-25 21:06发布

I am trying to run Python CGI script inside which I need to run docker image. I am using Docker version 1.6.2. user is "www-data", which is added in docker group.

www-data : www-data sudo docker 

On machine, with www-data I am able to execute docker commands

www-data@mytest:~/html/new$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

I am getting following error while running docker image from Python CGI script:

fatal msg="Get http:///var/run/docker.sock/v1.18/images/json: dial unix /var/run/docker.sock: permission denied. Are you trying to connect to a TLS-enabled daemon without TLS?" 

Is there anything I am missing here?

1条回答
老娘就宠你
2楼-- · 2019-03-25 21:43

Permission denied on a default install indicates you are trying to access the socket from a user other than root or that is not in the docker group. You should be able to run:

sudo usermod -a -G docker $username

on your desired $username to add them to the group. You'll need to logout and back in for this to take effect (use newgrp docker in an existing shell, or restart the daemon if this is an external service accessing docker like your cgi scripts).

Note that doing this effectively gives that user full root access on your host, so do this with care.

查看更多
登录 后发表回答