色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

宿主機怎樣與虛機里的docker容器通信

錢艷冰2年前13瀏覽0評論

宿主機怎樣與虛機里的docker容器通信?

一個非常好的問題。使用Docker時,宿主機和Docker容器之間、Docker容器和Docker容器之間,都需要進(jìn)行服務(wù)間通信。

一,宿主機和Docker容器之間

Docker啟動容器時,指定服務(wù)端口,比如啟動Redis時,端口為6379,這時如果需要訪問Redis服務(wù),就使用ip地址:端口,或者直接使用localhost:6379

在需要直接登錄到容器時,可以使用docker命令,比如:

docker exec -it data_redis_1 bash

其中data_redis_1時容器名稱,可以通過docker ps查看當(dāng)前容器信息:

二,Docker容器之間

Docker容器快捷高效部署應(yīng)用,資源編排定義和運行多個容器,通過docker-compose.yml配置文件聲明各個服務(wù),作為一個整體來創(chuàng)建和啟動。

那么Docker容器之間怎么通信呢?顯然是不應(yīng)該使用IP地址的,應(yīng)該使用和配置hostname,如果在不同子網(wǎng),就增加networks信息。

1,配置hostname

以Redis為例,Redis服務(wù)被API服務(wù)調(diào)用,為Redis配置hostname: cache

2,引用hostname

API服務(wù)在application.yml中配置Redis連接信息時,使用hostname指定服務(wù)地址:

3,不同子網(wǎng)間配置networks信息

實際使用中經(jīng)常將服務(wù)按照不同類別部署在不同子網(wǎng)中,這時需要指定networks信息。以數(shù)據(jù)層和接口層為例:

1)部署Redis時,配置networks為data,橋接模式

2)部署API服務(wù)時,聲明networks信息,data是external外部子網(wǎng)

我是工作多年的Web應(yīng)用架構(gòu)師,陸續(xù)發(fā)布關(guān)于軟件開發(fā)方面的文章,歡迎關(guān)注我,了解更多IT專業(yè)知識。