運(yùn)行docker需要root權(quán)限。
解決非root用戶沒有權(quán)限運(yùn)行docker命令的問題,方法如下:
方法1:
使用sudo獲取管理員權(quán)限,運(yùn)行docker命令,這個(gè)方法在通過腳本執(zhí)行docker命令的時(shí)候會(huì)有很多局限性
方法2:
docker守護(hù)進(jìn)程啟動(dòng)的時(shí)候,會(huì)默認(rèn)賦予名為docker的用戶組讀寫Unix socket的權(quán)限,因此只要?jiǎng)?chuàng)建docker用戶組,并將當(dāng)前用戶加入到docker用戶組中,那么當(dāng)前用戶就有權(quán)限訪問Unix socket了,進(jìn)而也就可以執(zhí)行docker相關(guān)命令
sudo groupadd docker #添加docker用戶組
sudo gpasswd -a $USER docker #將登陸用戶加入到docker用戶組中
newgrp docker #更新用戶組
補(bǔ)充:
如何獲得docker容器里面的root權(quán)限
首先你的container得正在運(yùn)行
可通過sudo docker container ls或者sudo docker ps查看容器的CONTAINER ID
最后執(zhí)行命令(其中7509371edd48 為上面查到的CONTAINER ID)
sudo docker exec -ti -u root 7509371edd48 bash
到此這篇關(guān)于運(yùn)行docker需要的權(quán)限分析的文章就介紹到這了,更多相關(guān)docker需要root權(quán)限嗎內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!