修改Docker默认镜像和容器存储位置(超详细!!!)

这篇具有很好参考价值的文章主要介绍了修改Docker默认镜像和容器存储位置(超详细!!!)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Ubuntu20.04 修改Docker默认镜像和容器存储位置

Docker 默认安装的情况下,会使用 /var/lib/docker/ 目录作为存储目录,用以存放拉取的镜像和创建的容器等。不过由于此目录一般都位于系统盘,遇到系统盘比较小,而镜像和容器多了后就容易尴尬,这里说明一下如何修改 Docker 的存储目录。

最简单粗暴的办法,当然就是直接把数据盘挂载到 /var/lib/docker 目录下,不过这样对整体影响太大,其他程序需要使用数据盘时很不方便,也可以使用软链接方式把 /var/lib/docker 和数据盘目录连接在一起同样可以实现,但是后期可能不方便维护,所以还是从 Docker 端的修改入手。

前提需要了解

  • Docker 当前使用的默认存位
  • Docker 当前使用的存储驱动程序
  • 镜像和容器要存放的新存储空间

一、查看当前docker的默认存储目录

docker info

docker指定镜像和容器目录位置,docker,Linux,docker,容器,运维

  • 可以看到docker存储驱动程序和默认存位:
Storage Driver: overlay
Docker Root Dir: /var/lib/docker

二、停止docker服务

sudo systemctl stop docker.service

三、目录迁移

3.1 创建新的docker目录,执行命令df -h,找一个大的磁盘。 我在/mnt目录下面建了 /mnt/docker目录,执行的命令是:
# 查看文件夹大小
sudo du -hd 1

sudo mkdir -p /mnt/docker
3.2 迁移/var/lib/docker目录下面的文件到 /home/docker
sudo cp -r /var/lib/docker/* /mnt/docker/

四、修改配置文件

4.1 编辑 /etc/docker/daemon.json 文件
sudo vim /etc/docker/daemon.json

默认情况下这个配置文件是没有的,这里实际也就是新建一个,然后写入以下内容:

{
  "data-root": "/mnt/docker"
}

取决于具体的ubuntu版本或者kernel版本决定要用data-root还是graph
/mnt/docker --> docker的存储路径

  • 此文件还涉及默认源的设定,如果设定了国内源,那么实际就是在源地址下方加一行,写成:
{
  "registry-mirrors": ["http://hub-mirror.c.163.com"],
  "data-root": "/mnt/docker"
}
4.2 编辑docker配置文件:
sudo vim /etc/systemd/system/multi-user.target.wants/docker.service

# 将ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock修改以下内容:
ExecStart=/usr/bin/dockerd --graph=/mnt/docker --storage-driver=overlay

docker指定镜像和容器目录位置,docker,Linux,docker,容器,运维

五、保存退出,然后重启 docker 服务

  • 重启docker服务,就可以更新docker默认的镜像容器保存位置,特别注意,如果新的保存位置里拷贝了原来容器保存位置里的所有内容,那么镜像数据等也就迁移过来了。
sudo systemctl daemon-reload
sudo systemctl restart docker
sudo systemctl status docker

六、检查docker存储路径是否配置成功

docker info

docker指定镜像和容器目录位置,docker,Linux,docker,容器,运维

七、启动成功后,再确认之前的镜像还在

docker ps -a
docker images

八、确定容器、镜像没问题后删除/var/lib/docker/目录中的文件。

rm -rf /var/lib/docker/*

docker主要是做了文件系统的隔离,所以每个镜像和容器实际上都是依赖块隔离的硬盘空间(在里面部署一个隔离的文件系统),所以可以通过直接拷贝的方式进行迁移,而不需要担心有什么依赖关系无法通过拷贝带过去。

注:仅供学习参考,如有不足欢迎指正!文章来源地址https://www.toymoban.com/news/detail-760690.html

到了这里,关于修改Docker默认镜像和容器存储位置(超详细!!!)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Docker概念|容器|镜像|命令详细(创建,删除,修改,添加)

    Docker概念|容器|镜像|命令详细(创建,删除,修改,添加)

    Docker是一个开源的应用容器引擎,基于go语言开发并遵循了apache2.0协议开源 是在Linux容器里运行应用的开源工具 是一种轻量级的”虚拟机“ Docker的容器技术可以在一台主机上轻松为任何应用创建一个轻量级的,可移植的,自给自足的容器。 docker本质就是宿主机的一个进程,

    2023年04月19日
    浏览(8)
  • Windows 10 Docker默认存储位置更改

    Windows 10 Docker默认存储位置更改

    由于所用的ThinkPad T480的C盘是自带的128G的SSD盘,采用的是Windows 10操作系统,随着开发类工具的安装,C盘经常告警存储空间不足,尤其是安装Docker Desktop并进行多种镜像容器试验操作,由于Docker默认的镜像容器等存储位置在C盘, 更是捉襟见肘。 在无法快速扩容SSD盘的情况下,

    2023年04月08日
    浏览(5)
  • Docker修改默认的存储路径

    Docker 默认的存储路径位于 /var/lib/docker 。要修改 Docker 的存储路径,请按照以下步骤操作: 1. 停止 Docker 服务: 2.创建一个新的目录,用于存储 Docker 数据。例如,将数据存储在 /app/docker/data/: 3.将当前 /var/lib/docker 目录下的所有数据移动到新目录: 4.备份并修改 Docker 配置文

    2024年02月12日
    浏览(7)
  • 如何修改Docker 的默认存储路径

    如何修改Docker 的默认存储路径

    Docker 默认安装的情况下,会使用/var/lib/docker/目录作为存储目录,用以存放拉取的镜像和创建的容器等。不过由于此目录一般都位于系统盘,遇到系统盘比较小,而镜像和容器多了后就容易出问题,这里说明一下如何修改 Docker 的默认存储目录 3.1创建新的docker目录,执行命令

    2024年02月04日
    浏览(7)
  • 使用WSL修改docker文件存储位置

    使用WSL修改docker文件存储位置

    按照以下说明将其重新定位到其他驱动器/目录,并保留所有现有的Docker数据。 首先,右键单击 Docker Desktop 图标关闭Docker桌面,然后选择退出Docker桌面,然后,打开命令提示符: 您应该能够看到,确保两个状态都已停止。 将 docker-desktop-data 导出到文件中(备份image及相关文件

    2024年02月11日
    浏览(9)
  • 修改Docker的运行时数据存储位置

    Docker的运行时数据,包括镜像、容器、网络和存储卷等默认存储在/var/lib/docker目录下,如果硬盘容量有限我们则需要修改这个存储位置 修改步骤如下: 停止Docker服务: sudo systemctl stop docker 创建一个新的目录来存储Docker运行时数据: sudo mkdir /new/docker/image/path 将Docker默认的运

    2024年02月09日
    浏览(5)
  • Docker 修改默认存储路径,解决系统盘占用100%问题

    一、查看存储路径是否在系统盘 输出结果: 二、迁移并修改配置  

    2024年02月15日
    浏览(8)
  • win10 Docker Desktop 换国内源 及 修改镜像位置

    win10 Docker Desktop 换国内源 及 修改镜像位置

    因网络问题,一般需要使用国内源加快镜像下载速度。在安装完docker destop后,可通过如下四步 修改 镜像源 [1-设置] - [2- Docker Engine] - [3-修改源] - [4- Apple restart] 修改源具体需要添加如下内容 待重启后即可使用国内镜像源 PS:以下所有操作均在 powershell 中运行 Docker Desktop默认

    2024年02月09日
    浏览(6)
  • docker设置rootdir:设置/var/lib/docker的默认数据存储位置(data-root或graph)

    docker设置rootdir:设置/var/lib/docker的默认数据存储位置(data-root或graph)

    Docker 使用 union 文件系统(UnionFS)来创建容器镜像,其中包含了一个读写层(write layer)和一个只读层(read-only layer)。 默认情况下,Docker 的写层存储在 /var/lib/docker 目录下,包括容器的文件系统、日志和元数据等。但是,如果你的主机上的 /var/lib/docker 目录空间有限,你可

    2024年02月12日
    浏览(18)
  • Docker Desktop将镜像存储位置从C盘迁移到其它盘

    Docker Desktop将镜像存储位置从C盘迁移到其它盘

    Docker Desktop默认安装在C盘,默认镜像存储位置在 C:用户AdministratorAppDataLocalDockerwsl Docker Desktop 通过WSL2启动,会自动创建2个子系统,分别对应2个 vhdx 硬盘映像文件。 可以命令行执行wsl --list -v 看到 1、在Docker Desktop图标上,右键选择[Quit Docker Desktop],退出Docker。 2、命令行

    2024年03月16日
    浏览(9)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包