首頁 >運維 >Docker >已經運行的docker如何重新掛載目錄

已經運行的docker如何重新掛載目錄

尚
原創
2020-03-30 11:08:0916299瀏覽

Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的映像中,然後發佈到任何流行的 Linux或Windows 機器上,也可以虛擬化。

已經運行的docker如何重新掛載目錄

已經執行的docker重新掛載目錄的方法:

一、先停止執行的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。

更多相關教學課程,請關注PHP中文網docker教學欄位。

以上是已經運行的docker如何重新掛載目錄的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn