docker 镜像、容器消失办理办法。

打印 上一主题 下一主题

主题 735|帖子 735|积分 2205

在工作中遇到了docker摆设的服务忽然停止的题目,ssh 查看后才知道原来是镜像和容器都不见了,假如遇到了这些题目标话,
可以参考一下步调来办理。先看一下docker安装的目录是否存储空间已满,假如满了请看方法2. 假如没满可以尝试方法1.
方法1. 更换daemon.json


  • 修改/etc/docker/daemon.json,让daemon.json非法,然后执行systemctl restart docker,这个时候docker会报错
  • 恢复正常的/etc/docker/daemon.json,然后执行systemctl daemon-reload,systemctl restart docker就可以了
方法2. 更换docker安装目录

要将 Docker 的安装目录(即 Docker 存储其容器、镜像、卷和网络的目录)更改到 /data 下,您需要举行以下步调:

2.1 停止 Docker 服务

首先,停止 Docker 服务以确保在更改配置时不会有任何辩论。
  1. sudo systemctl stop docker
复制代码
2.2 创建新的 Docker 目录

在 /data 下创建一个新的目录来存放 Docker 数据。
  1. sudo mkdir -p /data/docker
复制代码
2.3 修改 Docker 配置文件

编辑 Docker 的配置文件,通常位于 /etc/docker/daemon.json。假如该文件不存在,可以创建一个新的。
  1. sudo nano /etc/docker/daemon.json
复制代码
在文件中添加或修改以下内容,以将 Docker 数据根目录设置为 /data/docker:
  1. {
  2.   "data-root": "/data/docker"
  3. }
复制代码
假如文件中已经有其他配置项,确保 JSON 格式正确。比方:
  1. {
  2.   "data-root": "/data/docker",
  3.   "other-config": "value"
  4. }
复制代码
2.4 复制现有的 Docker 数据

假如您已经有一些 Docker 数据(容器、镜像等),您需要将它们复制到新的目录。
  1. sudo rsync -aP /var/lib/docker/ /data/docker/
复制代码
2.5 启动 Docker 服务

重新启动 Docker 服务以应用更改。
  1. sudo systemctl start docker
复制代码
2.6 验证更改

验证 Docker 是否正在使用新的数据目录。
  1. docker info | grep "Docker Root Dir"
复制代码
输出应表现新的 Docker 根目录为 /data/docker。
2.7 清理旧数据目录(可选)

假如确认一切正常,并且不再需要旧的 Docker 数据目录,您可以删除它以释放空间。
  1. sudo rm -rf /var/lib/docker
复制代码
总结

通过以上步调,您可以将 Docker 的安装目录更改到 /data 下。这包括停止 Docker 服务、修改配置文件、复制现有数据、重启服务以及验证更改。确保在执行这些操作时小心审慎,尤其是在处理现有数据时。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

tsx81428

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表