调整docker默认数据目录和普通用户使用docker

调整docker默认数据目录

方法一、最简单也是最暴力的方式

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服务

方法二、官方文档中的方式,修改 /etc/docker/daemon.json

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服务

方法三、通过软链接修改docker数据存储目录

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

验证

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

普通用户使用docker

以isi用户为例


在root用户下:

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

在普通用户isi下:
需要提前做好sudo授权

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

你可能感兴趣的:(docker,docker)