docker-compose網(wǎng)絡(luò)配置-?IP?主機(jī)名?hosts配置方式
docker-compose 配置IP、hostname、hosts配置
配置IP
version: "3"
networks:
bd-network: # 聲明網(wǎng)絡(luò)
external: true
services:
kafka: # 服務(wù)名稱
networks:
bd-network: # 連接的網(wǎng)絡(luò)名稱
ipv4_address: 172.2.0.102 # 配置IP
配置 主機(jī)名
version: "3"
services:
kafka: # 服務(wù)名稱
hostname: kf # 主機(jī)名
配置hosts
下面的配置可以修改/etc/hosts文件: 追加zk 172.2.0.101 、kf 172.2.0.102
version: "3"
services:
kafka:
extra_hosts:
- "zk:172.2.0.101"
- "kf:172.2.0.102"
配置完成進(jìn)入容器,可查看驗(yàn)證
$ sudo docker exec -it zk-singleton /bin/bash $ cat /etc/hosts
完整例子
1.創(chuàng)建一個(gè)網(wǎng)絡(luò)
$ sudo docker network create --driver=bridge --gateway=172.2.0.1 --subnet=172.2.0.0/16 bd-network
2.配置 單節(jié)點(diǎn)kafka、zookeeper,kafka通過主機(jī)名 訪問zookeeper
version: "3"
networks: #聲明網(wǎng)絡(luò)
bd-network:
external: true
services:
zookeeper: # 服務(wù)名
image: 'bitnami/zookeeper:latest' # 鏡像
container_name: zk-singleton # 容器名
hostname: zk # 主機(jī)名
networks:
bd-network:
ipv4_address: 172.2.0.101 # 定義容器ip
extra_hosts:
- "zk:172.2.0.101"
- "kf:172.2.0.102"
ports: # 宿主端口:容器端口映射
- '2181:2181'
environment: # 容器環(huán)境配置
- ALLOW_ANONYMOUS_LOGIN=yes
kafka:
image: 'bitnami/kafka:latest'
container_name: kf-singleton
hostname: kf
networks:
bd-network:
ipv4_address: 172.2.0.102
extra_hosts:
- "zk:172.2.0.101"
- "kf:172.2.0.102"
ports:
- '9192:9092'
environment:
- KAFKA_BROKER_ID=1
- ALLOW_PLAINTEXT_LISTENER=yes
- KAFKA_CFG_LISTENERS=PLAINTEXT://:9092
- KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://:9092
- KAFKA_CFG_ZOOKEEPER_CONNECT=zk:2181 # 通過主機(jī)名訪問zookeeper
depends_on: # 依賴
- zookeeper
3.驗(yàn)證
$ sudo docker exec -it kf-singleton /bin/bash $ hostname $ cat /etc/hosts

總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
docker部署MySQL時(shí)無法啟動(dòng)問題的解決方法
最近做項(xiàng)目,遇到這樣問題,docker中的mysql不能啟動(dòng),下面這篇文章主要給大家介紹了關(guān)于docker部署MySQL時(shí)無法啟動(dòng)問題的解決方法,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-01-01
Docker?部署分布式搜索引擎?Elastic?Search的詳細(xì)過程
Elasticsearch是一款非常強(qiáng)大的開源搜索引擎,具備非常多強(qiáng)大功能,可以幫助我們從海量數(shù)據(jù)中快速找到需要的內(nèi)容,這篇文章主要介紹了Docker?部署分布式搜索引擎?Elastic?Search,需要的朋友可以參考下2023-02-02
Docker容器內(nèi)無法解析域名:Temporary?failure?in?name?resolution
本文主要介紹了Docker容器內(nèi)無法解析域名:Temporary?failure?in?name?resolution,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2026-04-04
Docker如何同時(shí)啟動(dòng)多個(gè)服務(wù)
這篇文章主要為大家詳細(xì)介紹了Docker如何同時(shí)啟動(dòng)多個(gè)服務(wù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-10-10
在docker中執(zhí)行l(wèi)inux shell命令的操作
這篇文章主要介紹了在docker中執(zhí)行l(wèi)inux shell命令的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-03-03
docker python如何實(shí)現(xiàn)打包的方法
這篇文章主要介紹了docker 打包python實(shí)現(xiàn)方法的相關(guān)資料,這里說明如今實(shí)現(xiàn),需要的朋友可以參考下2016-12-12
Docker 容器指定自定義網(wǎng)段的固定IP/靜態(tài)IP地址
這篇文章主要介紹了Docker 容器指定自定義網(wǎng)段的固定IP/靜態(tài)IP地址的相關(guān)資料,需要的朋友可以參考下2016-12-12
Docker內(nèi)網(wǎng)穿透frp部署實(shí)現(xiàn)過程解析
這篇文章主要介紹了Docker內(nèi)網(wǎng)穿透frp部署實(shí)現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11

