여러 서비스 컨테이너 정의가있는 docker-compose
파일이 있습니다. 하나의 서비스는 동일한 도커 작성 실행 내에서 Apache Kafka
와 통신합니다.도커 컨테이너 내의 IP 주소를 찾아냅니다.
kafka:
image: spotify/kafka
ports:
- "2181:2181"
- "9092:9092"
environment:
ADVERTISED_HOST: 127.0.0.1
ADVERTISED_PORT: 9092
내가 같은 고정 표시기-작성 파일 내 서비스 정의가 :
그래서 나는이 같은 카프카 고정 표시기 정의를 가지고있다. 서비스 시작 스크립트에서 Kafka 인스턴스의 IP 주소를 어떻게 든 알아 내야합니다.
나는 컨테이너에서 사용하는 IP 주소를 확인하기 위해 docker inspect
과 같은 것을 사용할 수 있습니다.
그러나 어떻게 도커 작성 환경에서 동적으로 수행 할 수 있습니까?
편집
그래서 오른쪽 구성해야한다 (@nwinkler 감사) :
kafka:
image: spotify/kafka
ports:
- "2181:2181"
- "9092:9092"
environment:
ADVERTISED_HOST: kafka
ADVERTISED_PORT: 9092
myservice:
image: foo
links:
- kafka:kafka
가 (또는 당신이 당신의 카프카라는 이름의 방법 ADVERTISED_HOST
kafka
에 설정하는 것을 잊지 마세요 용기 내에서 docker-compose
).
'kafka'를 호스트 이름으로 사용하여'kafka' 컨테이너에 연결할 수 있어야합니다. – tkausl