elasticsearch 指定ELasticsearch';docker-compose.yml中的s node.name,elasticsearch,docker-compose,dockerfile,elasticsearch,Docker Compose,Dockerfile" /> elasticsearch 指定ELasticsearch';docker-compose.yml中的s node.name,elasticsearch,docker-compose,dockerfile,elasticsearch,Docker Compose,Dockerfile" />

elasticsearch 指定ELasticsearch';docker-compose.yml中的s node.name

elasticsearch 指定ELasticsearch';docker-compose.yml中的s node.name,elasticsearch,docker-compose,dockerfile,elasticsearch,Docker Compose,Dockerfile,官方声明我可以传递标志/参数来设置节点名称: $ docker run -d elasticsearch elasticsearch -Des.node.name="TestNode" 如何在我的docker compose.yml中指定此项?-Des.node.name=“TestNode”只是命令的一个参数,因此您可以将其指定为命令的一部分: command: "elasticsearch -Des.node.name=TestNode" 您还可以使用入口点作为命令的“基础”,并使用命令

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

$ docker run -d elasticsearch elasticsearch -Des.node.name="TestNode"
如何在我的
docker compose.yml
中指定此项?

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

command: "elasticsearch -Des.node.name=TestNode"
您还可以使用
入口点
作为命令的“基础”,并使用
命令
添加参数,如下所示:

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

如果docker文件中已经设置了
入口点
,您可以完全忽略它。

您可以将其添加到
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”
服务:
弹性搜索:
图片:docker.elastic.co/elasticsearch/elasticsearch:5.3.1
容器名称:elasticsearch
环境:
-node.name=

谢谢,但是我是否仍然保持
命令未动?我不想覆盖原始命令,以防他们出于任何原因决定更改它!我的意思是,如果我尝试执行
docker run
操作,我可以在不更改命令的情况下给出参数,这里是否可以执行相同的操作?是的,但您需要指定自己的配置文件。请看一下我们的docker图片,值得一提的是,我们的图片就像一个elasticsearch命令。因此,无论您想在运行过程中指定什么,而不是使用配置文件,您都可以在我的回答中添加有关
entrypoint
的更多信息,这符合您的建议。
environment:
      node.name: your-node-name-here