docker: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post
http://%2Fvar%2Frun%2Fdocker.sock/v1.39/containers/create: dial unix /var/run/docker.sock: connect: permission denied.
See 'docker run --help'.
其他博主的解釋: docker進程使用Unix Socket而不是TCP端口。而默認情況下,Unix socket屬於root用戶,需要root權限才能訪問。
命令權限問題
既然是命令的權限問題,那就有好多中解決方法了,
解決方法1.
直接用root身份來執行, 但只能root執行命令, 感覺怪怪的
解決方法2.
docker守護進程啓動的時候,會默認賦予名字爲docker的用戶組讀寫Unix socket的權限,因此只要創建docker用戶組,並將當前用戶加入到docker用戶組中,那麼當前用戶就有權限訪問Unix socket了,進而也就可以執行docker相關命令
sudo groupadd docker #添加docker用戶組
sudo gpasswd -a $USER docker #將登陸用戶加入到docker用戶組中
newgrp docker #更新用戶組
docker ps #測試docker命令是否可以使用sudo正常使用
關於作者
聯繫方式 - [email protected]
你也可以通過 github | csdn | @新浪微博 關注我的動態
如果有任何問題或者建議,歡迎大家評論點贊👍