本文共 1317 字,大约阅读时间需要 4 分钟。
在CentOS系统中,默认的Docker设置通常只允许root用户进行管理操作。要让普通用户也能管理Docker容器和镜像,需要进行一些配置和权限设置。以下是操作步骤:
确保目标用户已经加入docker
组,因为Docker操作需要管理员权限。可以使用以下命令:
usermod -aG docker $USER
例如:
usermod -aG docker docker_user1
检查用户的组和权限:
id docker_user1
输出应显示用户已经加入docker
组。
如果运行docker run hello-world
时出现权限错误:
docker: Got permission denied while trying to connect to the Docker daemon socket
可以按照以下步骤修复:
chown "$USER":"$USER" /home/"$USER"/.docker -R chmod g+rwx "$HOME/.docker" -R
如果权限问题仍然存在,可以尝试调整Docker服务的权限。
如果需要远程访问Docker服务,可以通过以下步骤配置:
编辑Docker配置文件:
vim /etc/docker/daemon.json
添加以下内容:
{ "hosts": ["unix:///var/run/docker.sock", "tcp://127.0.0.1:2375"] }
重启Docker服务:
systemctl restart docker.service
验证端口监听情况:
netstat -lntp | grep dockerd
如果不想修改配置文件,可以直接在命令中指定端口:
docker --host tcp://127.0.0.1:2375 run hello-world
如果Docker容器需要访问外部DNS服务器,可以配置如下:
vim /etc/docker/daemon.json
添加DNS配置:
{ "dns": ["8.8.8.8", "8.8.4.4"] }
重启Docker服务:
systemctl restart docker.service
docker --dns 8.8.8.8 --dns 8.8.4.4 run hello-world
systemctl status docker.service
docker network-proxy
转载地址:http://iwdjz.baihongyu.com/