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
補(bǔ)充:解決非root用戶沒有權(quán)限運(yùn)行docker命令的問題
問題描述:
”Got permission denied while trying to connect to the Docker daemon
socket at unix:///var/run/docker.sock: Get
http://%2Fvar%2Frun%2Fdocker.sock/v1.26/images/json: dial unix
/var/run/docker.sock: connect: permission denied“
原因(摘自docker手冊(cè)):
Manage Docker as a non-root user
The docker daemon binds to a Unix socket instead of a TCP port. By
default that Unix socket is owned by the user root and other users can
only access it using sudo. The docker daemon always runs as the root
user.If you don't want to use sudo when you use the docker command, create
a Unix group called docker and add users to it. When the docker daemon
starts, it makes the ownership of the Unix socket read/writable by the
docker group.
答案顯而易見,要不用root用戶,要不創(chuàng)建一個(gè)名為docker的用戶組,并把你需要使用docker的非root用戶添加到該組中,如果還不會(huì)搞,繼續(xù)往下看。
方法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 #更新用戶組
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
docker容器動(dòng)態(tài)添加端口號(hào)的方法
這篇文章主要介紹了docker容器動(dòng)態(tài)添加端口號(hào)的方法,本文分步驟給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-05-05Docker Desktop Vmmem內(nèi)存占用過高問題及完美解決方案
DockerDesktopVmmem內(nèi)存占用過高問題常見于其基于WSL運(yùn)行類似虛擬機(jī)的機(jī)制,通過編輯.wslconfig文件限制WSL資源,可有效降低內(nèi)存占用,具體操作包括創(chuàng)建.wslconfig文件,調(diào)整內(nèi)存配置,并重啟Docker Desktop,需注意內(nèi)存設(shè)置不宜過小,以免影響Docker運(yùn)行和容器穩(wěn)定性2024-09-09借助Docker搭建JMeter+Grafana+Influxdb監(jiān)控平臺(tái)的詳細(xì)教程
這篇文章主要介紹了借助Docker搭建JMeter+Grafana+Influxdb監(jiān)控平臺(tái),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01Docker查看鏡像的Dockerfile(docker history和docker inspec
這篇文章主要給大家介紹了關(guān)于Docker查看鏡像的Dockerfile的相關(guān)資料,文中主要運(yùn)用的是docker history和docker inspect命令,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-05-05