刚玩n1没多久,很适合折腾,但奈何内存太小,docker装几个容器就满了。看了很多大佬的教程,把自己的折腾经验记录一下,方便自己以后再用。
迁移docker到硬盘
(1)挂载硬盘
mkdir /mnt/H1 # 创建目录供挂载使用 mount -v /dev/sda1 /mnt/H1 # 挂载 U 盘 df -h # 查看挂载状态
(2)停止docker
service docker stop
3)迁移docker数据
# 创建目录 mkdir /mnt/USB/docker -p # 拷贝数据 # -rpvb 递归/保留属性/覆盖/详细 cp /var/lib/docker/* /mnt/USB/docker -rpvb mv /var/lib/docker /var/lib/docker.bak # 软连接:实际 + 目标 ln -s /mnt/USB/docker /var/lib # 恢复步骤,删除软连接(警告!尾部没有左斜杠 /) #rm -rf /var/lib/docker # 生效/启动 systemctl daemon-reload service docker restart # 验证 docker info #docker info | grep 'docker Root Dir' ----------------- 显示=成功 Docker Root Dir: /mnt/USB/docker # 重启自动挂载 U 盘,在 rc.local sed -i '/exit 0/i\mount -v /dev/sda /mnt/USB' /etc/rc.local
4)docker延迟启动
防止硬盘挂载慢,dockers启动后挂载失败
# 移除docker自启服务 systemclt disable docker 或者命令 systemd disable docker
编辑/etc/rc.local文件,文件末尾exit0之前追加如下内容并保存:
sleep 60 systemctl start docker