嘗試連線到 Docker 守護程式套接字時權限被拒絕

嘗試連線到 Docker 守護程式套接字時權限被拒絕

docker version在 Ubuntu 上安裝 Docker 並運行或 後,我收到此錯誤sudo docker version

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.26/
containers/create: dial unix /var/run/docker.sock: connect: permission denied.

docker使用方便腳本安裝這裡

答案1

此問題可能在兩種情況下出現:

  1. 在沒有超級使用者模式的情況下執行便利腳本。
  2. 以不屬於該docker群組的使用者身分執行命令。

解決方案:

  1. 快速解決:運行類似 的命令sudo docker version解決方案:建議以超級使用者權限執行腳本,以避免使用過程中出現權限問題:

    sudo sh get-docker.sh
    
  2. 將使用者新增至docker群組以避免權限問題:

    sudo usermod -aG docker your-user
    

筆記:將使用者新增至「docker」群組將賦予他們運行容器的能力,這些容器可用於取得 Docker 主機上的 root 權限。參考Docker 守護程式攻擊面了解更多。

相關內容