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?
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.