官方 Elasticsearch docker 仓库声明我可以传递一个标志/参数来设置节点名称:
$ docker run -d elasticsearch elasticsearch -Des.node.name="TestNode"
如何在docker-compose.yml
中指定此内容?
-Des.node.name="TestNode"
只是命令的一个参数,因此您可以将其指定为command
的一部分:
command: "elasticsearch -Des.node.name=TestNode"
您也可以使用 entrypoint
作为命令的"基础",并使用 command
添加参数,如下所示:
entrypoint: elasticsearch
command: "-Des.node.name=TestNode"
如果 Dockerfile 中已经设置了ENTRYPOINT
,则可以完全省略它。
您可以将其添加到docker-compose.yml
文件的environment
部分,如下所示:
version: '2'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:5.3.1
container_name: elasticsearch
environment:
- node.name=<your-node-name-here>
environment:
node.name: your-node-name-here