本文摘自PHP中文网,作者尚,侵删。
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。
已经运行的docker重新挂载目录的方法:
一、先停止运行的docker容器,然后通过修改配置文件重新挂载目录
1、停止docker服务
1 | systemctl stop docker.service(关键,修改之前必须停止docker服务)
|
2、使用vim /var/lib/docker/containers/container-ID/config.v2.json命令打开配置文件,修改配置文件中的目录位置,然后保存退出
1 | "MountPoints" :{ "/home" :{ "Source" : "/docker" , "Destination" : "/home" , "RW" :true, "Name" : "" , "Driver" : "" , "Type" : "bind" , "Propagation" : "rprivate" , "Spec" :{ "Type" : "bind" , "Source" : "//docker/" , "Target" : "/home" }}}
|
3、启动docker服务
1 | systemctl start docker.service
|
4、启动docker容器
1 | docker start <container-name/ID>
|
二、提交现有容器为新镜像,然后重新运行它
1 2 3 4 5 | $ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5a3422adeead ubuntu:14.04 "/bin/bash" About a minute ago Exited (0) About a minute ago agitated_newton
$ docker commit 5a3422adeead newimagename
$ docker run -ti -v "$PWD/dir1" :/dir1 -v "$PWD/dir2" :/dir2 newimagename /bin/bash
|
然后停止旧容器,并使用这个新容器,如果由于某种原因需要新容器使用旧名称,请在删除旧容器后使用docker rename。
阅读剩余部分
相关阅读 >>
Docker容器端口不能访问怎么办
Docker如何自定义镜像
Docker 核心是什么?
Docker镜像的两个特征
Docker如何通过代理上网
Docker可以隔离什么
ubuntu如何删除Docker
怎么进入Docker容器镜像内部
如何给Docker配置加速器
怎么看Docker里应用的版本
更多相关阅读请进入《Docker》频道 >>
转载请注明出处:木庄网络博客 » 已经运行的docker如何重新挂载目录