Adjust the docker default data directory and ordinary users to use docker

Adjust docker default data directory

Method one, the easiest and most violent way

systemctl stop docker  				   #先停docker服务
cat /etc/systemd/system/multi-user.target.wants/docker.service  #编译文件
#找到ExecStart部分,在此行末尾添加--graph=你的目录,保存即可。我的如下
ExecStart=/usr/bin/dockerd -H unix://  --graph=/u01/docker   #--graph=/path/to/path可以替换成-g /path/to/path 效果等同
保存退出,重启docker服务
systemctl daemon-reload   			  #让systemd重新读取下这些service等的配置
systemctl restart docker 			  #重启docker服务

Method 2: Modify /etc/docker/daemon.json as in the official document

systemctl stop docker  				  #先停docker服务
{
    
    
  "registry-mirrors": ["http://hub-mirror.c.163.com"],
  "data-root": "/u01/docker"
}
保存退出,重启docker服务
systemctl daemon-reload   			  #让systemd重新读取下这些service等的配置
systemctl restart docker  			  #重启docker服务

Method 3: Modify the docker data storage directory through a soft link

systemctl stop docker   			  #先停docker服务
mkdir /u01/docker					  #创建docker的数据目录
mv /var/lib/docker/* /u01/docker      #移动/var/lib/docker/目录到新目录中
rm -rf /var/lib/docker                #删除/var/lib/docker/目录
ln -s /data/docker /var/lib/docker    #软连接/data/docker 到 /var/lib/里
systemctl daemon-reload   			  #让systemd重新读取下这些service等的配置
systemctl start docker				  #启动docker

verification

docker info |grep 'Dir'   			  #查看数据目录

Ordinary users use docker

Take the isi user as an example


Under the root user:

groupadd docker             		  #添加docker用户组
gpasswd -a isi docker      			  #将普通用户isi加入到docker用户组中
newgrp docker               		  #更新用户组
docker ps                   		  #测试docker命令是否可以使用sudo正常使用

Under ordinary user isi:
need to do sudo authorization in advance

sudo groupadd docker                  #添加docker用户组,提前做好sudo授权即可
sudo gpasswd -a $USER docker          #将当前用户isi加入到docker用户组中
newgrp docker                         #更新用户组
docker ps                       	  #测试docker命令是否可以使用sudo正常使用

Guess you like

Origin blog.csdn.net/weixin_44729138/article/details/106355128