淺談docker避免每次sudo方法
最近發(fā)現(xiàn) vscode 安裝 docker 插件后依然無(wú)法正常打開(kāi)(顯示權(quán)限不足),考慮到應(yīng)該是 sudo 權(quán)限的問(wèn)題。
要讓 Docker 避免每次輸入 sudo,核心是將當(dāng)前用戶加入 Docker 專屬用戶組(docker 組)——Docker 安裝后會(huì)自動(dòng)創(chuàng)建該組,加入后用戶無(wú)需 sudo 即可執(zhí)行 Docker 命令(原理:Docker 守護(hù)進(jìn)程默認(rèn)允許 docker 組用戶無(wú)權(quán)限驗(yàn)證訪問(wèn))
一、具體操作步驟
1. 檢查并創(chuàng)建 docker 組(若未存在)
Docker 安裝后通常已自動(dòng)創(chuàng)建 docker 組,可先檢查;若未創(chuàng)建則手動(dòng)創(chuàng)建:
# 檢查 docker 組是否存在(若輸出 docker 則已存在) grep docker /etc/group # 若不存在,手動(dòng)創(chuàng)建 docker 組 sudo groupadd docker
2. 將當(dāng)前用戶加入 docker 組
將登錄用戶(如當(dāng)前用戶名 ubuntu)加入 docker 組(替換命令中的 U S E R 為你的用戶名, USER 為你的用戶名, USER為你的用戶名,USER 會(huì)自動(dòng)獲取當(dāng)前用戶):
sudo usermod -aG docker $USER
- 參數(shù)說(shuō)明:-a(append,追加用戶到組)、-G(指定附屬組,這里是 docker 組)
3. 生效用戶組配置(關(guān)鍵步驟)
newgrp docker
- 該命令會(huì)臨時(shí)切換當(dāng)前終端的用戶組環(huán)境,立即生效
4. 驗(yàn)證是否生效
無(wú)需 sudo 執(zhí)行 Docker 命令,測(cè)試是否能正常運(yùn)行:
# 查看 Docker 鏡像(無(wú)需 sudo,無(wú)報(bào)錯(cuò)則生效) docker images # 或查看 Docker 狀態(tài)(無(wú)權(quán)限報(bào)錯(cuò)則未生效) docker info
- 若命令正常輸出結(jié)果(無(wú) permission denied 錯(cuò)誤),說(shuō)明配置成功,后續(xù)無(wú)需再輸 sudo
二、常見(jiàn)問(wèn)題排查
1. 執(zhí)行 Docker 命令仍報(bào)「權(quán)限不足」
解決步驟:
1. 確認(rèn)用戶已加入 docker 組
groups $USER # 輸出中包含 docker 則正確
2. 若已包含 docker 組仍報(bào)錯(cuò),檢查 Docker 守護(hù)進(jìn)程的 socket 文件權(quán)限
# 查看 socket 文件權(quán)限(默認(rèn)應(yīng)為 docker 組所有) ls -l /var/run/docker.sock
3. 若權(quán)限不對(duì),手動(dòng)修正(臨時(shí)生效,重啟 Docker 后需重新執(zhí)行)
sudo chmod 666 /var/run/docker.sock
4. 永久解決 socket 權(quán)限問(wèn)題(推薦)
編輯 Docker 配置文件,確保 docker 組擁有 socket 權(quán)限:
sudo vim /etc/docker/daemon.json
添加以下配置(若文件已有其他內(nèi)容,追加即可,注意 JSON 語(yǔ)法):
{
"group": "docker"
}
重啟 Docker 服務(wù):
sudo systemctl restart docker
2. 執(zhí)行 newgrp docker 后,新終端仍需 sudo
原因:newgrp 僅對(duì)當(dāng)前終端生效,新終端需重新加載用戶組配置。解決:執(zhí)行以下命令刷新用戶組緩存,或直接【重新登錄系統(tǒng)(推薦)】:
sudo su - $USER # 切換回當(dāng)前用戶,加載最新組配置
到此這篇關(guān)于淺談docker避免每次sudo方法的文章就介紹到這了,更多相關(guān)docker避免每次sudo內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Docker一鍵部署SpringBoot項(xiàng)目的多種方式
這篇文章主要介紹了Docker一鍵部署SpringBoot項(xiàng)目的多種方式,文中通過(guò)代碼示例講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-12-12
淺談docker compose書(shū)寫(xiě)規(guī)則
這篇文章主要介紹了淺談docker compose書(shū)寫(xiě)規(guī)則,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05
docker部署nginx并實(shí)現(xiàn)https教程
文章介紹了如何使用Docker部署Nginx并實(shí)現(xiàn)HTTPS,首先,文章提到了服務(wù)器環(huán)境,然后詳細(xì)步驟包括安裝Docker、準(zhǔn)備SSL證書(shū)、編寫(xiě)Nginx配置文件和Dockerfile、創(chuàng)建Nginx鏡像并運(yùn)行容器,最后,文章驗(yàn)證了Nginx的訪問(wèn)2025-11-11
docker之如何設(shè)置日志文件大小及個(gè)數(shù)
這篇文章主要介紹了docker之如何設(shè)置日志文件大小及個(gè)數(shù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05
Docker解決容器中文字體亂碼問(wèn)題的終極方案分享
在騰訊云服務(wù)器使用Docker部署Java后端服務(wù)時(shí),經(jīng)常遇到生成圖片、PDF或報(bào)表時(shí)中文顯示為方框的問(wèn)題,這是因?yàn)榛A(chǔ)Docker鏡像通常不包含中文字體,下面我們就來(lái)看看如何解決吧2025-09-09
Docker部署Nginx反向代理的坑與解決方案實(shí)戰(zhàn)記錄
這篇文章主要介紹了Docker部署Nginx反向代理的坑與解決方案的相關(guān)資料,通過(guò)本文的介紹,你可以掌握如何在Docker中部署Nginx作為反向代理,并解決了常見(jiàn)的報(bào)錯(cuò)問(wèn)題,需要的朋友可以參考下2025-03-03
國(guó)內(nèi)服務(wù)器配置Docker國(guó)內(nèi)源(極限加速)
本文主要介紹了國(guó)內(nèi)服務(wù)器配置Docker國(guó)內(nèi)源,用戶可以在CentOS服務(wù)器上成功安裝并使用國(guó)內(nèi)鏡像加速器來(lái)提升Docker的使用,感興趣的可以了解一下2025-02-02
Docker之蘋(píng)果Mac安裝Docker的兩種方式小結(jié)
這篇文章主要介紹了Docker之蘋(píng)果Mac安裝Docker的兩種方式小結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04
如何解決1130?-?Host?‘172.17.0.1‘?is?not?allowed?to?conne
這篇文章主要介紹了如何解決1130?-?Host?‘172.17.0.1‘?is?not?allowed?to?connect?to?this?MySQL?server的問(wèn)題,本文給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-08-08

