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

以我手头的一台 VPS 作为例子,可以看到这台机子本身有两块硬盘,我把数据盘 nvme1n1p1 挂载到了/var/www 目录,目标就是将 Docker 存储目录移到/var/www/dockerdata
img

修改 Docker 的默认存储路径

输入

docker info
可以查看程序信息,红框里就是默认的存储目录:

img

修改 Docker 的默认存储路径

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

官方文档的修改办法是编辑 /etc/docker/daemon.json 文件:

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

{
"data-root": "/var/www/dockerdata"
}

此文件还涉及默认源的设定,如果设定了国内源,那么实际就是在源地址下方加一行,写成:

{
"registry-mirrors": ["[http://hub-mirror.c.163.com](http://hub-mirror.c.163.com/)"],
"data-root": "/var/www/dockerdata"
}

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

systemctl restart docker
再次查看 docker 信息,可以看到目录已经变成了设定的/var/www/dockerdata:

img

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐