轉自:https://blog.csdn.net/zedelei/article/details/90208183
方式一:修改配置文件(需停止docker服務)
1、停止docker服務
systemctl stop docker.service(關鍵,修改之前必須停止docker服務)
2、vim /var/lib/docker/containers/container-ID/config.v2.json
修改配置文件中的目錄位置,然后保存退出
"MountPoints":{"/home":{"Source":"/docker","Destination":"/home","RW":true,"Name":"","Driver":"","Type":"bind","Propagation":"rprivate","Spec":{"Type":"bind","Source":"//docker/","Target":"/home"}}}
3、啟動docker服務
systemctl start docker.service
4、啟動docker容器
docker start <container-name/ID>
方式二:提交現有容器為新鏡像,然后重新運行它
$ 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。
方式三:export容器為鏡像,然后import為新鏡像
$docker container export -o ./myimage.docker 容器ID
$docker import ./myimage.docker newimagename
$docker run -ti -v "$PWD/dir1":/dir1 -v "$PWD/dir2":/dir2 newimagename /bin/bash
然后停止舊容器,並使用這個新容器,如果由於某種原因需要新容器使用舊名稱,請在刪除舊容器后使用docker rename。