Docker 卷掛載是指在 Docker 容器中,把主機(jī)上的目錄或文件掛載到容器內(nèi)部,使得容器內(nèi)部的進(jìn)程可以讀取和寫入這些主機(jī)目錄或文件。使用卷掛載,可以讓容器內(nèi)部的數(shù)據(jù)持久化,避免容器重啟導(dǎo)致數(shù)據(jù)丟失。下面是如何使用卷掛載的基本步驟。
1. 創(chuàng)建數(shù)據(jù)卷
docker volume create my_volume
上面的命令創(chuàng)建了一個(gè)名為 my_volume 的數(shù)據(jù)卷。也可以通過(guò)指定其他選項(xiàng),如驅(qū)動(dòng)程序以及具體的存儲(chǔ)目錄等來(lái)自定義數(shù)據(jù)卷的屬性。
2. 在容器中使用卷掛載
docker run -v my_volume:/data my_image
上面的命令創(chuàng)建了一個(gè)名為 my_volume 的卷掛載到容器 /data 目錄下,并使用了鏡像 my_image 啟動(dòng)容器。容器中的 /data 目錄即為主機(jī)上的 my_volume 目錄。如果先前未創(chuàng)建 my_volume,則會(huì)自動(dòng)創(chuàng)建該卷并掛載到容器中。
3. 查看數(shù)據(jù)卷
docker volume ls
上面的命令可以列出所有數(shù)據(jù)卷
docker inspect my_volume
上面的命令可以查看指定數(shù)據(jù)卷的詳細(xì)信息,包括掛載點(diǎn)、容器卷配置和驅(qū)動(dòng)程序等。
4. 使用 Dockerfile 創(chuàng)建帶有卷掛載的鏡像
FROM my_base_image
VOLUME /data
CMD [ "my_command" ]
上面的 Dockerfile 使用了 FROM 指令來(lái)指定基礎(chǔ)鏡像。接著,使用了 VOLUME 指令來(lái)指定需要掛載的卷,最后使用 CMD 指令來(lái)指定容器啟動(dòng)命令。
總之,Docker 卷掛載提供了一種簡(jiǎn)單而又靈活的方式來(lái)管理 Docker 容器中的數(shù)據(jù)。掌握使用卷掛載的基本步驟,可以讓你更好地管理容器中的數(shù)據(jù),實(shí)現(xiàn)有效的數(shù)據(jù)持久化和共享。