首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HOSTNAME_COMMAND如何在wurstmeister/kafka-docker上工作

HOSTNAME_COMMAND如何在wurstmeister/kafka-docker上工作
EN

Stack Overflow用户
提问于 2019-09-11 06:14:04
回答 1查看 855关注 0票数 1

我正在尝试让wurstmeister/kafka-docker在docker-machine上以群模式工作,到目前为止,还没有太多的运气。然而,我不确定我是否理解HOSTNAME_COMMAND是如何工作的。这是docker-compose.yml:

代码语言:javascript
复制
version: '3.2'
services:
  zookeeper:
    image: wurstmeister/zookeeper
    ports:
      - "2181:2181"
  kafka:
    image: wurstmeister/kafka:latest
    ports:
      - target: 9094
        published: 9094
        protocol: tcp
        mode: host
    environment:
      HOSTNAME_COMMAND: "docker info | grep ^Name: | cut -d' ' -f 2"
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT
      KAFKA_ADVERTISED_LISTENERS: INSIDE://:9092,OUTSIDE://_{HOSTNAME_COMMAND}:9094
      KAFKA_LISTENERS: INSIDE://:9092,OUTSIDE://:9094
      KAFKA_INTER_BROKER_LISTENER_NAME: INSIDE
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

因此,我认为HOSTNAME_COMMAND获得了主机名,但对于_语法:_{HOSTNAME_COMMAND}

这是docker-compose的一部分吗?卡夫卡?或者这是wurstmeister的附加功能?我假设它是为参与群的每个节点评估的,对吗?我找不到任何文档来解释这是从哪里来的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-11 06:40:49

它是wurstmeister Dockerfile CMD script中的“一个插件”。

为每个Docker服务评估该值,并在启动时在容器内调用,该容器仅在该命令上调用eval

https://github.com/wurstmeister/kafka-docker/blob/master/start-kafka.sh#L52-L63

除了在_{NAME}脚本中对整个值进行字符串替换的模式之外,bash语法并不重要

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57878822

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档