docker命令中必須加上sudo的問題解決方法
1、問題背景
初次使用docker時,安裝后通過終端進行docker命令時必須加上root權(quán)限,否則將會報錯,如下所示:
問題原因和相應(yīng)的解決方法在官方網(wǎng)站中有文檔解釋:
2、問題原因
docker提供服務(wù)的后臺守護進程是綁定至一個Unix socket上而非TCP端口上,而通常這個Unix socket只能由root用戶使用,普通權(quán)限的用戶使用時必須加上 sudo 命令
3、解決方法
知道原因以后,解決方法就顯而易見了:讓當前用戶有使用Unix socket的權(quán)限具體做法是創(chuàng)建一個名叫 docker 的Unix用戶組,并且把當前用戶添加進去,當docker守護進程啟動創(chuàng)建Unix socket時就會自動令該組下的所有成員能夠進行訪問
sudo groupadd docker sudo usermod -aG docker $USER #此處的USER是系統(tǒng)變量,直接使用該語句即可 newgrp docker
通過上述方法可能會令當前用戶擁有root權(quán)限,所以應(yīng)當謹慎使用,具體風險如下:
https://docs.docker.com/engine/security/#docker-daemon-attack-surface
大家可以看一看官方文檔,里面也列舉了可能會遇到的其他問題
Attention
雖然這樣做可以在輸入docker命令時不用加sudo,但并非對于所有命令都有效,如:
docker login ... or docker push ...
如果使用上述方法后執(zhí)行docker命令發(fā)現(xiàn)奇怪的報錯,可以先使用sudo再嘗試執(zhí)行一次
到此這篇關(guān)于docker命令中必須加上sudo的問題解決方法的文章就介紹到這了,更多相關(guān)docker命令必須加上sudo 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
如何使用 docker compose 搭建 fastDFS文件服務(wù)器
這篇文章主要介紹了如何使用 docker compose 搭建 fastDFS文件服務(wù)器,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-10-10docker環(huán)境中websocket?通過nginx代理不通解決方案
這篇文章主要介紹了docker環(huán)境中websocket?通過nginx代理不通解決方案,下面是一些可能會導致?WebSocket?代理失敗的問題以及相應(yīng)的解決方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-05-05docker?swarm快速部署redis分布式集群的詳細過程
這篇文章主要介紹了docker?swarm快速部署redis分布式集群,只需要通過docker-compose.yml文件和一個啟動命令就完成redis分布式部署的方式,讓其分別部署在不同機器上,并實現(xiàn)集群搭建,需要的朋友可以參考下2022-10-10docker安裝并持久化postgresql數(shù)據(jù)庫的操作步驟
這篇文章主要介紹了docker安裝并持久化postgresql數(shù)據(jù)庫的操作步驟,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12