docker 设置镜像存储路径

vi /lib/systemd/system/docker.service

如下修改

ExecStart=/usr/bin/dockerd --data-root /ssd/data/docker -H fd:// --containerd=/run/containerd/containerd.sock
 

然后systemctl stop docker

并把/var/lib/docker 拷贝到新的路径下

systemctl daemon-reload

systemctl restart docker

 

Docker默认会将镜像存储在系统的默认路径下(如Linux系统通常为`/var/lib/docker`)。如果需要更改这个路径,可以按照以下步骤操作: --- ### **方法一:通过配置文件修改** 1. **停止 Docker 服务** 先确保关闭 Docker 服务: ```bash sudo systemctl stop docker ``` 2. **编辑或创建 Docker 的配置文件** - 对于大多数 Linux 系统,默认的配置文件位置可能是 `/etc/docker/daemon.json`。如果没有该文件,则可以手动创建它。 示例内容: ```json { "graph": "/新的路径/docker" } ``` 或者使用更现代的方式指定数据根目录: ```json { "data-root": "/新的路径/docker" } ``` 将 `"/新的路径/docker"` 替换为你希望设置的新存储路径。 3. **迁移旧的数据到新路径** 如果已经有镜像存在,需将其从原路径移动到新路径: ```bash rsync -aqxP /var/lib/docker/ /新的路径/docker/ ``` 4. **重启 Docker 并验证** 启动 Docker 服务并检查是否生效: ```bash sudo systemctl start docker docker info | grep "Docker Root Dir" ``` 输出应该显示为你刚刚设定的新路径。 --- ### **方法二:直接修改 systemd 配置** 1. 停止 Docker 服务: ```bash sudo systemctl stop docker ``` 2. 创建或编辑 Docker 的 service 文件覆盖规则: 运行命令打开编辑器: ```bash sudo nano /etc/systemd/system/docker.service.d/override.conf ``` 3. 添加以下内容: ```ini [Service] ExecStart= ExecStart=/usr/bin/dockerd --graph="/新的路径/docker" ``` 4. 刷新 systemd 配置并启动 Docker: ```bash sudo systemctl daemon-reload sudo systemctl restart docker ``` 5. 检查路径变更是否成功: ```bash docker info | grep "Docker Root Dir" ``` --- ### 注意事项 - 新路径需要有足够的磁盘空间,并且建议赋予适当的权限给 Docker 使用。 - 移动过程中务必小心处理正在运行的服务和容器状态,以免导致数据丢失或损坏。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值