据我所知,当docker映像被拉出来时,它们被安装到/var/lib/docker中。是否有办法改变这个位置,比如到一个挂载的卷,比如/mnt?
当前回答
我用的是docker 19.03.14版本。下面的链接帮助了我。
检查这个链接
在/etc/docker/daemon.我在section下面添加了json文件:-
{
"data-root": "/hdd2/docker",
"storage-driver": "overlay2"
}
其他回答
复制粘贴版本的获胜者答案:)
只创建以下内容的文件:
$ sudo vi /etc/docker/daemon.json
{
"graph": "/my-docker-images"
}
在docker 1.12.6中的Ubuntu 16.04.2 LTS上测试
在CentOS 6.5
service docker stop
mkdir /data/docker (new directory)
vi /etc/sysconfig/docker
添加以下行
other_args=" -g /data/docker -p /var/run/docker.pid"
然后保存文件并再次启动docker
service docker start
并将存储库文件创建在/data/docker中
基于Linux安装后步骤指南和我在web爬行时发现的官方方法如下:
覆盖docker服务配置文件: Sudo systemctl编辑docker.service 添加或修改以下行,替换您自己的值。 (服务) ExecStart = ExecStart = / usr / bin / dockerd——图=“/ mnt /码头工人”
保存文件。(它创建了:/etc/systemd/system/docker.service.d/override.conf)
重新加载systemctl配置。 Sudo systemctl daemon-reload 重启码头工人。 Sudo systemctl restart docker.service
在这之后,如果你可以核化/var/lib/docker文件夹,如果你没有任何映像,你可以备份。
在openSUSE Leap 42.1
$cat /etc/sysconfig/docker
## Path : System/Management
## Description : Extra cli switches for docker daemon
## Type : string
## Default : ""
## ServiceRestart : docker
#
DOCKER_OPTS="-g /media/data/installed/docker"
请注意,DOCKER_OPTS最初是空的,我所做的只是在参数中添加使docker使用我的新目录
一个更简单的解决方案是创建一个软链接点,指向您想要的任何东西,例如
link -s /var/lib/docker /mnt/whatever
它适用于我的CentOS 6.5服务器。
推荐文章
- 如何从DockerFile运行docker实例?
- 我是否试图连接到启用TLS的没有TLS的守护进程?
- Docker -一种访问主机USB或串行设备的方法?
- Docker:无效引用格式
- 将AWS凭证传递给Docker容器的最佳方法是什么?
- 如何在docker-compose中设置主机名?
- 为什么Docker容器映像这么大?
- 如何在docker撰写版本3中指定内存和CPU限制
- Docker和安全密码
- 如何让Docker容器在系统引导时自动启动?
- 如何在Docker容器中用模式初始化MySQL数据库?
- PYTHONUNBUFFERED在docker文件中的用途是什么?
- 如何在Dockerfile CMD中使用变量?
- 将主机端口转发到docker容器
- “docker compose”与“docker-compose”的区别