Nat*_*lch 4 environment-variables elasticsearch docker docker-compose
我正在尝试使用 docker compose 运行 Elasticsearch,但我不确定如何正确传递ES_JAVA_OPTS="-Xms512m -Xmx512m"环境变量。我尝试了很多单引号和双引号的组合,但它们都导致:Error: Could not find or load main class "-Xms512m.
我的 docker-compose 配置是:
elasticsearch:
image: "docker.elastic.co/elasticsearch/elasticsearch:5.4.3"
ports:
- "6379:6379"
environment:
- "http.host=0.0.0.0"
- "transport.host=127.0.0.1"
- "xpack.security.enabled=false"
- 'ES_JAVA_OPTS="-Xms512m -Xmx512m"'
Run Code Online (Sandbox Code Playgroud)
当直接使用以下命令运行容器时,此环境变量可以正常工作:
docker run --detach \
--name elasticsearch \
--publish 9200:9200 \
--env "http.host=0.0.0.0" \
--env "transport.host=127.0.0.1" \
--env "xpack.security.enabled=false" \
--env "ES_JAVA_OPTS=""-Xms512m -Xmx512m""" \
docker.elastic.co/elasticsearch/elasticsearch:5.4.3
Run Code Online (Sandbox Code Playgroud)
我在这里缺少什么?
根据https://github.com/docker/compose/issues/2854,这是 docker compose 如何解析您的 env 变量的问题。
如果您切换到 yaml map 而不是 list,它应该可以工作:
elasticsearch:
image: "docker.elastic.co/elasticsearch/elasticsearch:5.4.3"
ports:
- "6379:6379"
environment:
http.host: 0.0.0.0
transport.host: 127.0.0.1
xpack.security.enabled: "false"
ES_JAVA_OPTS: -Xms512m -Xmx512m
Run Code Online (Sandbox Code Playgroud)
这是 Docker compose 和 space 的问题。
"ES_JAVA_OPTS=-Xmx512m -Xms512m"
Run Code Online (Sandbox Code Playgroud)
请参阅https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html
| 归档时间: |
|
| 查看次数: |
5220 次 |
| 最近记录: |