已經(jīng)運(yùn)行的docker如何重新掛載目錄

docker 是一個開源的應(yīng)用容器引擎,讓開發(fā)者可以打包他們的應(yīng)用以及依賴包到一個可移植的鏡像中,然后發(fā)布到任何流行的?linux或windows?機(jī)器上,也可以實(shí)現(xiàn)虛擬化。

已經(jīng)運(yùn)行的docker如何重新掛載目錄

已經(jīng)運(yùn)行的docker重新掛載目錄的方法:

一、先停止運(yùn)行的docker容器,然后通過修改配置文件重新掛載目錄

1、停止docker服務(wù)

systemctl?stop?docker.service(關(guān)鍵,修改之前必須停止docker服務(wù))

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服務(wù)

systemctl?start?docker.service

4、啟動docker容器

docker?start?<container-name></container-name>

二、提交現(xiàn)有容器為新鏡像,然后重新運(yùn)行它

$?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

然后停止舊容器,并使用這個新容器,如果由于某種原因需要新容器使用舊名稱,請?jiān)趧h除舊容器后使用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

然后停止舊容器,并使用這個新容器,如果由于某種原因需要新容器使用舊名稱,請?jiān)趧h除舊容器后使用docker rename。

更多相關(guān)教程,請關(guān)注PHP中文網(wǎng)docker教程欄目。

以上就是已經(jīng)運(yùn)行的

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊9 分享