在 Azure 容器实例中将"node.name"添加为弹性搜索的变量时出错



我正在部署elasticsearch容器实例,但当我添加环境变量";node.name";我得到以下错误

The environment variable name in container 'dev-elasticsearch' of container group 'devt-elasticsearch' is invalid. A valid environment variable name must start with alphabetic character or '_', followed by a string of alphanumeric characters or '_' (e.g. 'my_name',  or 'MY_NAME',  or 'MyName'). 

这是yml文件的片段

api-version: 2018-10-01
location: japaneast
name: dev-elasticsearch
properties:
containers:
- name: dev-elasticsearch
properties:
environmentVariables:
- name: 'node.name'
value: es-dev
- name: ES_JAVA_OPTS
value: "-Xms512m -Xmx512m"

尝试不带引号的值

- name: ES_JAVA_OPTS
value: -Xms512m -Xmx512m

正如错误所示,您的变量名node.name无效。它与Azure容器组的命名规则不匹配。您可以这样更改变量名:

properties:
environmentVariables:
- name: node_name
value: es-dev

作为另一种变通方法,您可以构建一个自定义Docker映像,如下所示:

FROM elasticsearch:7.8.1
ENV name=node.name

然后你必须用ACR、Dockerhub或类似的来托管它

最新更新