溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Docker中未指定掛載點(diǎn)容器間volume卷的數(shù)據(jù)共享

發(fā)布時(shí)間:2020-07-09 14:37:18 來(lái)源:網(wǎng)絡(luò) 閱讀:419 作者:耕耘實(shí)錄 欄目:云計(jì)算

一 背景

在實(shí)際使用過(guò)程中,我們可能會(huì)經(jīng)常遇到容器間數(shù)據(jù)共享的情況,怎么處理呢?通過(guò) docker 命令中的一些選項(xiàng),我們即可完成容器間的數(shù)據(jù)共享。

二 實(shí)驗(yàn)步驟

2.1 創(chuàng)建容器

容器一:gysl-1

[root@dev ~]# docker run -it --rm --name gysl-1 -v /data-1 alpine

容器二:gysl-2

[root@dev ~]# docker run -it --rm --volumes-from gysl-1 --name gysl-2 alpine

2.2 驗(yàn)證數(shù)據(jù)共享情況

在容器gysl-1創(chuàng)建文件:gysl-1.txt

/ # cd data-1/
/data-1 # touch gysl-1.txt

在容器gysl-2創(chuàng)建文件:gysl-2.txt

/ # cd data-1/
/data-1 # touch gysl-2.txt

分別在兩個(gè)容器查看:

/data-1 # ls -lh
total 0
-rw-r--r--    1 root     root           0 Jan 10 18:45 gysl-1.txt
-rw-r--r--    1 root     root           0 Jan 10 18:47 gysl-2.txt

兩個(gè)容器的data-1目錄下的內(nèi)容完全一致。

三 總結(jié)

3.1 當(dāng)一個(gè)容器的volume被其他容器共享時(shí),其他容器是不需要?jiǎng)?chuàng)建共享目錄的,共享目錄會(huì)在其他容器內(nèi)被自動(dòng)創(chuàng)建,與被共享容器的目錄名稱(chēng)一致。

3.2 一個(gè)容器的volume可以被多個(gè)容器同時(shí)共享。

3.3 當(dāng)容器被刪除時(shí),volume不會(huì)被自動(dòng)刪除。如果數(shù)據(jù)不會(huì)再次被使用,那么可以通過(guò)手動(dòng)來(lái)刪除已經(jīng)廢棄的volume,命令如下:

[root@dev ~]# docker volume ls
DRIVER              VOLUME NAME
local               8126b3ad828a9a7e29ec04f4d7a1901be5e40ca6157fde62dca3421322e5de7a
local               bf80e1eb66685161cb6bf6943079de4a68a7bc3db3bba241347ed051fe59fc46
[root@dev ~]# docker volume prune
WARNING! This will remove all volumes not used by at least one container.
Are you sure you want to continue? [y/N] y
Total reclaimed space: 0 B

也可以:

docker volume rm volume_name

還可以(在刪除容器的同時(shí)強(qiáng)制刪除volume):

docker rm -vf container_name
向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI