Centos服务器上自动挂载NAS空间并Docker数据迁移到新的空间
获取nas空间信息
安装nfs工具,showmount测试
nfs工具:yum install nfs-utils
[root@localhost ~]# showmount -e 10.0.1.225
Export list for 10.0.1.225:
/volume1/Public *
手动挂载测试
先手工挂在,
mount.nfs 10.0.1.225:/volume1/public /data -o nfsvers=4,vers=4
测试没有问题,就卸卸载掉
umount /data
自动挂载
修改 /etc/fstab
10.0.1.225:/volume1/public/32 /data nfs nofail,x-systemd.automount,x-systemd.requires=network-online.target,x-systemd.device-timeout=10 0 0
reboot
不知道有什么使fstab生效的命令,反正我时reboot了。
不过反过来说,不reboot怎么确认配置的自动挂载生效呢?
docker数据迁移
创建目录
mkdir -p /data/docker/lib
停止docker服务
systemctl stop docker.service
systemctl disable docker.service
拷贝数据
mkdir /data/docker
cp -r /var/lib/docker/* /data/docker
或者
rsync -avz /var/lib/docker/ /data/docker/lib/
方法一:备份后设置软连接
mv /var/lib/docker /var/lib/docker.bak_20200706
ln -s /data/docker /var/lib/docker
方法二:修改daemon.json文件
vi /etc/docker/daemon.json
{"registry-mirrors": ["http://7e61f7f9.m.daocloud.io"],"graph": "/new-path/docker"}
方法三:修改docker.service文件.
vi /usr/lib/systemd/system/docker.service
EXECStart的后面增加后如下: --graph=/data/docker
ExecStart=/usr/bin/dockerd --graph=/data/docker ....
开启服务
systemctl enable docker.service
systemctl daemon-reload
systemctl start docker.service
自己测试一下应该没有问题。