首頁 >運維 >Docker >docker可以非root權限啟動嗎

docker可以非root權限啟動嗎

WBOY
WBOY原創
2022-07-29 15:53:238372瀏覽

docker不可以非root權限進行啟動;使用docker需要root權限,沒有root權限的普通用戶將沒有辦法操作docker,若普通用戶沒有root權限,可以利用sudo獲取管理員權限,運行docker指令,或將目前使用者加入docker使用者群組中,那麼目前使用者就有權限存取“Unix socket”,進而也就可以執行docker相關指令。

docker可以非root權限啟動嗎

本教學操作環境:linux7.3系統、docker19.03版、Dell G3電腦。

docker可以非root權限啟動嗎

docker不可以非root權限進行啟動

docker是需要root權限的,如果沒有root權限的普通用戶將沒有辦法操作docker。下面給出兩個修改的方法,來完成一般使用者的操作的請求。

解決方案

1. 賦予一般使用者root權限

需要修改:/etc /sudoers

# 现在是不可更改的,需要调整权限:chmod 0755 sudoers (需要root权限的)
root@SRV252:/etc# ll sudoers
-r--r----- 1 root root 815 Feb 23 13:06 sudoers

將sudoers檔案中的,以下內容進行修改

# User privilege specification
root    ALL=(ALL:ALL) ALL
name1  ALL=(ALL:ALL) ALL # 使用sudo时,仍需要密码的
name2   ALL=(ALL:ALL) NOPASSWD: ALL # 使用sudo时候,不要密码(免密的)

一般使用者可以使用docker了

2. 假如docker群組

docker安裝之後預設會建立docker群組,docker群組擁有讀取套接字權限,因此將該普通使用者加入docker群組,該群組下所有使用者有存取unix套接字權限,最後刷新使用者的初始組即可。

2.1 查看是否有docker使用者

test@ubuntu:~$ sudo cat /etc/group |grep docker
docker:x:999:  # 表示存在

如果沒有需要手動增加

sudo groupadd docker

2.2 查看/var/run/docker.sock 的屬性

如果/var/run/docker.sock的使用者群組不是docker,而是root需要使用chgrp修改。

# ll /var/run/docker.sock
srw-rw---- 1 root root 0 Oct 29 22:20 /var/run/docker.sock=
chgrp docker /var/run/docker.sock=

2.3 將一般使用者加入docker群組

# 添加
test@:~$ sudo gpasswd -a test docker
Adding user test to group docker
# 查看,此时不在,需要刷新
test@ubuntu:~$ id
uid=1002(test) gid=1002(test) groups=1002(test)
# 刷新
test@ubuntu:~$ newgrp docker

推薦學習:《docker影片教學

以上是docker可以非root權限啟動嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn