日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無(wú)先后,達(dá)者為師

網(wǎng)站首頁(yè) 編程語(yǔ)言 正文

docker容器間進(jìn)行數(shù)據(jù)共享的三種實(shí)現(xiàn)方式_docker

作者:字母哥哥 ? 更新時(shí)間: 2022-07-28 編程語(yǔ)言

我們本節(jié)為大家介紹的容器數(shù)據(jù)共享,是指在同一臺(tái)服務(wù)器宿主機(jī)的容器之間的數(shù)據(jù)共享。如果涉及到跨服務(wù)器容器的數(shù)據(jù)共享,實(shí)際上是涉及到服務(wù)器之間的數(shù)據(jù)同步或分布式文件系統(tǒng),基本不屬于docker技術(shù)范疇。

一、Bind Mounts方式共享數(shù)據(jù)

使用下面的命令行啟動(dòng)一個(gè)容器,名稱是nginx80,宿主機(jī)映射端口是80

docker run -d --name nginx80 \
  -p 80:80 \
  -v /root/nginx/html:/usr/share/nginx/html/ \
  nginx:latest

然后修改上面的腳本,使用--name nginx81-p 81:80啟動(dòng)一個(gè)容器,使用--name nginx82-p 82:80再啟動(dòng)一個(gè)容器。

這樣我們就啟動(dòng)了三個(gè)nginx容器,映射的宿主機(jī)磁盤目錄都是/root/nginx/html。后續(xù)我們只要把需要部署的html文件放入宿主機(jī)的/root/nginx/html目錄即可影響三個(gè)nginx web服務(wù)。

二、Volumes方式數(shù)據(jù)共享

Volumes方式數(shù)據(jù)共享與Bind Mounts方式共享數(shù)據(jù)幾乎是一樣的,只是-v的宿主機(jī)文件數(shù)據(jù)卷指定為Volume:nginx-html。

docker run -d --name nginx80 \
  -p 80:80 \
  -v nginx-html:/usr/share/nginx/html/  \
  nginx:latest

然后修改上面的腳本,使用--name nginx81-p 81:80啟動(dòng)一個(gè)容器,使用--name nginx82-p 82:80再啟動(dòng)一個(gè)容器。可以參考下面的這張圖,理解Volumes方式數(shù)據(jù)共享。

三、Volume container(數(shù)據(jù)卷容器)方式

3.1.創(chuàng)建數(shù)據(jù)卷容器

除了上面提到的2種方式,我們還可以創(chuàng)建一個(gè)數(shù)據(jù)卷容器。數(shù)據(jù)卷容器的核心在于數(shù)據(jù)卷,只不過(guò)以容器的方式存在。特別適用于當(dāng)一組容器有多個(gè)相同的數(shù)據(jù)卷映射關(guān)系時(shí)(即多個(gè)-v) ,我們把多個(gè)-v數(shù)據(jù)卷映射關(guān)系組成一個(gè)數(shù)據(jù)卷組(即數(shù)據(jù)卷容器)

docker create \
 -v nginx-html:/usr/share/nginx/html/  \
-v /root/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
 --name vc_nginx_html  busybox
  • 只是create容器,并未運(yùn)行容器,因?yàn)槲覀儾⒉恍枰萜鬟\(yùn)行,我們需要的只是數(shù)據(jù)卷(組)
  • 命名方式最好和普通的容器區(qū)分開,如“vc_”前綴
  • 之所以使用busybox鏡像,是因?yàn)樗亲钚。畈徽伎臻g的鏡像。

容器創(chuàng)建完成之后,可以使用docker ps -a查看容器,也可以通過(guò)docker inspect vc_nginx_html查看該容器的多個(gè)數(shù)據(jù)卷。

3.2.使用數(shù)據(jù)卷容器

docker run -d --name nginx81 \
  -p 81:80 \
  --volumes-from vc_nginx_html   nginx:latest

使用上面的腳本創(chuàng)建一個(gè)容器,讓它的數(shù)據(jù)卷映射(掛載)關(guān)系與vc_nginx_html相同,即:

--volumes-from vc_nginx_htm
等同于
-v nginx-html:/usr/share/nginx/html/  \
-v /root/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \

結(jié)合下圖理解一下數(shù)據(jù)卷容器,數(shù)據(jù)卷容器一般只提供數(shù)據(jù)卷的定義,不真實(shí)運(yùn)行。

原文鏈接:https://blog.csdn.net/hanxiaotongtong/article/details/125039578

欄目分類
最近更新