在docker-compose.yml中指定ELasticsearch的node.name

时间:2016-02-29 16:41:19

标签: elasticsearch docker-compose dockerfile

官方Elasticsearch docker repository声明我可以传递一个标志/参数来设置节点名称:

$ docker run -d elasticsearch elasticsearch -Des.node.name="TestNode"

如何在docker-compose.yml

中指定此内容

3 个答案:

答案 0 :(得分:1)

-Des.node.name="TestNode"只是命令的参数,因此您可以将其指定为command的一部分:

command: "elasticsearch -Des.node.name=TestNode"

您还可以使用entrypoint作为" base"对于命令,并使用command添加args,如下所示:

entrypoint: elasticsearch
command: "-Des.node.name=TestNode"

如果已在Dockerfile中设置ENTRYPOINT,则可以完全省略它。

答案 1 :(得分:1)

您可以将其添加到environment文件的docker-compose.yml部分,如下所示:

version: '2'
services:
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:5.3.1
    container_name: elasticsearch
    environment:
      - node.name=<your-node-name-here>

答案 2 :(得分:0)

environment:
      node.name: your-node-name-here