欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

非root用戶運行Docker命令的操作步驟

 更新時間:2025年04月24日 09:04:45   作者:李博帥  
在企業(yè)環(huán)境中,為了保證系統(tǒng)安全和權(quán)限的合理分配,通常不允許直接使用 root 用戶執(zhí)行 Docker 命令,本文將介紹如何配置普通用戶,使其能夠無須 root 權(quán)限便可執(zhí)行 Docker 命令,從而提升安全性和操作便捷性,需要的朋友可以參考下

背景與目的

默認情況下,Docker 進程的管理權(quán)限綁定在 root 用戶上。直接使用 root 用戶執(zhí)行 Docker 命令存在安全隱患,不利于權(quán)限控制和審計。為解決此問題,推薦方式是將需要執(zhí)行 Docker 命令的普通用戶添加到 Docker 用戶組(一般為 docker 組),使其擁有對 Docker.sock 的訪問權(quán)限,從而無須提升權(quán)限即可操作 Docker。

操作步驟詳解

下面詳細說明如何配置非 root 用戶執(zhí)行 Docker 命令。

1. 確認或創(chuàng)建 docker 用戶組

Docker 的套接字文件 /var/run/docker.sock 默認會被分配給 docker 用戶組。如果該組不存在,需要手動創(chuàng)建。

# 查看系統(tǒng)是否存在docker用戶組
getent group docker

# 如果沒有輸出,說明docker組不存在,執(zhí)行下面命令創(chuàng)建docker組
sudo groupadd docker

說明: 使用 getent group docker 代替 cat /etc/group | grep docker,更為高效且語言無關(guān)。

2. 檢查并修改 Docker 套接字的用戶組歸屬

由于 Docker 的套接字默認位于 /var/run/docker.sock,確認該文件所屬用戶組是否是 docker,如果不是,需要修改。

# 查看docker.sock的權(quán)限和所屬用戶組
ls -l /var/run/docker.sock

# 示例如下,輸出類似:
# srw-rw---- 1 root docker 0 Jun  1 10:00 /var/run/docker.sock

# 若所屬組不是docker,則執(zhí)行:
sudo chgrp docker /var/run/docker.sock

建議: Docker 服務(wù)重啟后,套接字權(quán)限通常會自動恢復(fù),若遇到權(quán)限變化問題,可考慮使用 docker.service 的配置覆蓋。

3. 將目標用戶添加到 docker 用戶組

將需要執(zhí)行 Docker 命令的普通用戶添加到 docker 組。

# 以當前用戶為例
sudo usermod -aG docker ${USER}

注意: -aG 表示向附加組中添加用戶,避免覆蓋已有組。

4. 重新加載用戶組權(quán)證(使配置即時生效)

為了立即使用戶組權(quán)限生效,可以選擇以下兩種方式:

  • 重新登錄用戶會話,注銷并重新登錄
  • 或執(zhí)行 newgrp docker 切換當前 shell 的組權(quán)限
newgrp docker

效果與驗證

完成配置后,可以通過如下命令驗證用戶的組權(quán)限及 Docker 命令執(zhí)行能力。

1. 查看用戶所屬組

groups ${USER}
# 輸出中應(yīng)包含docker組

2. 測試執(zhí)行 docker 命令

docker ps

若沒有產(chǎn)生權(quán)限錯誤,且正常顯示容器列表,說明配置成功。

常見問題排查與建議

  • 權(quán)限不足報錯確認用戶是否添加到 docker 用戶組,并重新登錄 Session。

  • Docker 服務(wù)未啟動運行 sudo systemctl status docker,確認 Docker 正常運行。

  • docker.sock 權(quán)限會重置某些系統(tǒng)中,重啟 Docker 服務(wù)后 /var/run/docker.sock 的權(quán)限會被重置??赏ㄟ^創(chuàng)建 systemd override 文件固定權(quán)限:

sudo mkdir -p /etc/systemd/system/docker.service.d
sudo tee /etc/systemd/system/docker.service.d/override.conf <<EOF
[Service]
ExecStartPost=/bin/chgrp docker /var/run/docker.sock
ExecStartPost=/bin/chmod 660 /var/run/docker.sock
EOF

sudo systemctl daemon-reload
sudo systemctl restart docker
  • 安全建議將用戶添加至 docker 組等同于給予 root 權(quán)限,請僅對可信用戶配置此權(quán)限,避免安全風險。

總結(jié)

通過將普通用戶加入 docker 用戶組,可以避免使用 root 身份執(zhí)行 Docker 命令,提升系統(tǒng)安全性和運維便利性。掌握以上操作步驟和注意事項,有助于企業(yè)級 Docker 運行環(huán)境的規(guī)范管理。

以上就是非root用戶運行Docker命令的操作步驟的詳細內(nèi)容,更多關(guān)于非root用戶運行Docker命令的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 總結(jié)Docker不適合部署數(shù)據(jù)庫的7大原因

    總結(jié)Docker不適合部署數(shù)據(jù)庫的7大原因

    在本篇文章里小編給大家整理一篇關(guān)于Docker不適合部署數(shù)據(jù)庫的7大原因,有興趣的朋友們可以參考學(xué)習下。
    2021-01-01
  • Ollma本地部署Qwen2.5 14B的詳細過程(不使用docker)

    Ollma本地部署Qwen2.5 14B的詳細過程(不使用docker)

    本文介紹了如何在不使用Docker的情況下部署Ollama模型和Open-webui實現(xiàn)可視化界面,Ollama模型通過命令行操作,包括啟動、創(chuàng)建、運行等,Open-webui則需要安裝Anaconda環(huán)境,安裝并啟動服務(wù)后,通過瀏覽器訪問即可使用,感興趣的朋友跟隨小編一起看看吧
    2024-11-11
  • 在Docker容器中使用Arthas的詳細步驟

    在Docker容器中使用Arthas的詳細步驟

    本文不是介紹arthas怎么用的。這里要說的是,如何在我們的docker容器中,使用arthas,對如何在Docker容器中使用Arthas相關(guān)知識感興趣的朋友一起看看吧
    2021-12-12
  • docker的鏡像存放地址在哪里

    docker的鏡像存放地址在哪里

    Docker鏡像(Image)是用于創(chuàng)建?Docker?容器的模板,下面這篇文章主要給大家介紹了關(guān)于docker的鏡像存放地址在哪里的相關(guān)資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-01-01
  • Dockerfile中multi-stage(多階段構(gòu)建)詳解

    Dockerfile中multi-stage(多階段構(gòu)建)詳解

    在2017年5月3日即將發(fā)行的 Docker 17.05.0-ce 中,Docker 官方提供了簡便的多階段構(gòu)建 (multi-stage build) 方案,下面這篇文章主要給大家介紹了關(guān)于Dockerfile中multi-stage(多階段構(gòu)建)的相關(guān)資料,需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習學(xué)習吧。
    2018-03-03
  • Docker如何搭建私有倉庫

    Docker如何搭建私有倉庫

    文章介紹了如何搭建私有倉庫并使用Docker進行鏡像的管理和推送,首先,搭建私有倉庫并配置非HTTPS訪問(適用于Ubuntu、Debian和CentOS),然后,使用Docker命令標記、推送和拉取鏡像,最后,通過curl命令查看倉庫中的鏡像列表
    2025-03-03
  • docker運行異構(gòu)鏡像詳解

    docker運行異構(gòu)鏡像詳解

    介紹了在不同CPU架構(gòu)下運行Docker鏡像時遇到的問題及解決方法,作者分享了由于銀行使用鯤鵬系統(tǒng)(ARM架構(gòu))導(dǎo)致Docker容器運行失敗的經(jīng)歷,解決方法包括啟用`--platform`參數(shù)、安裝`qemu-user-static`及`binfmt_misc`
    2024-12-12
  • Gogs+Jenkins+Docker 自動化部署.NetCore的方法步驟

    Gogs+Jenkins+Docker 自動化部署.NetCore的方法步驟

    這篇文章主要介紹了Gogs+Jenkins+Docker 自動化部署.NetCore,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友們下面隨著小編來一起學(xué)習學(xué)習吧
    2021-06-06
  • docker如何刪除懸空鏡像

    docker如何刪除懸空鏡像

    文章介紹了如何使用Docker命令刪除懸空鏡像,以提高服務(wù)器空間利用率,通過使用docker image命令結(jié)合filter和awk工具,可以過濾出沒有Tag的鏡像,并將其刪除,總結(jié)了兩種方法,一種是通過管道和awk命令,另一種是使用更簡單的docker rmi命令
    2025-02-02
  • docker安裝drone的實現(xiàn)示例

    docker安裝drone的實現(xiàn)示例

    Drone是一款基于Docker的持續(xù)集成和持續(xù)部署平臺,可以幫助開發(fā)者自動化構(gòu)建、測試和部署應(yīng)用程序,本文主要介紹了docker安裝drone的實現(xiàn)示例,感興趣的可以了解一下
    2023-12-12

最新評論