Docker命令讓普通用戶能夠執(zhí)行的實(shí)現(xiàn)
安裝完docker一般就會(huì)有docker用戶組
第二步、將當(dāng)前用戶添加到docker組
sudo gpasswd -a ${USER} docker
第三步、重啟docker
sudo systemctl restart docker
第四步、授予讀寫權(quán)限
sudo chmod a+rw /var/run/docker.sock
補(bǔ)充:非root用戶沒有權(quán)限使用docker
運(yùn)行docker run時(shí)提示no permission
centos上安裝docker的官方文檔
在安裝docker-ce的時(shí)候已經(jīng)自動(dòng)創(chuàng)建了docker用戶組,但是需要手動(dòng)添加用戶到docker用戶組
$ sudo usermod -aG docker $USER
或者$ sudo usermod -aG docker {指定用戶名}
但我在添加用戶到docker用戶組后還是提示no permission
比如我要運(yùn)行ubuntu 14.04的bash:
[hsowan@localhost shell-workspace]$ docker run -it --rm ubuntu:14.04 bash 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.38/containers/create: dial unix /var/run/docker.sock: connect: permission denied. See 'docker run --help'.
why? 原因在于雖然用戶加入了docker用戶組,但是當(dāng)前沒有切換到docker用戶組,所以還是沒有權(quán)限
如果一個(gè)用戶同時(shí)屬于多個(gè)用戶組,那么用戶可以在用戶組之間切換,以便具有其他用戶組的權(quán)限。
$ newgrp docker
現(xiàn)在就可以在非root用戶下執(zhí)行docker相關(guān)的命令了
除了給用戶添加用戶組之外,還有什么辦法可以讓非root用戶可以執(zhí)行docker相關(guān)的命令呢?
ok,那我們來查看一下/var/run/docker.sock的權(quán)限
$ sudo ll /var/run/docker.sock
會(huì)得到下面的結(jié)果:
srw-rw----. 1 root docker 0 Sep 22 15:29 /var/run/docker.sock
所以現(xiàn)在直接修改/var/run/docker.sock的權(quán)限
$ sudo chmod 666 /var/run/docker.sock
現(xiàn)在就可以在非root用戶下運(yùn)行docker了
$ docker run -it --rm ubuntu:14.04 bash root@5c60abab6425:/# cat /etc/os-release NAME="Ubuntu" VERSION="14.04.5 LTS, Trusty Tahr" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 14.04.5 LTS" VERSION_ID="14.04" HOME_URL="http://www.ubuntu.com/" SUPPORT_URL="http://help.ubuntu.com/" BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/" root@5c60abab6425:/# exit exit
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持本站。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。
關(guān)注官方微信