我需要使用来自dockerhub官方镜像的dockerized Elasticsearch并使用Fig或Ansible启动Docker容器。两者都有用于传递标准docker运行命令参数(如端口,卷等)的选项,但是我找不到一种传递诸如-Des.node.name="TestNode"
之类的参数来配置Elasticsearch集群名称等的方法。
我无法修改Dockerfile来更改配置,因为它们是运行时配置,并且在安装之间有所不同,因此需要在运行时传递。
有谁知道如何使用Fig或Ansible传递此类参数。
最佳答案
Fig已经由 docker compose
替换了相当一段时间。
传递此类参数的方法是:
使用runtime environment variables的
docker compose up
和CMD
中有一个启动脚本,该脚本将期望并使用这些环境变量来构建正确的命令以启动ElsticSearch(使用-Dxxx=yyy
)关于elasticsearch - 通过Ansible或Fig运行docker中的传递参数(例如-Des.node.name =“TestNode”),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34244799/