You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Docker中设置Elasticsearch的xpack.security.enrollment.enabled为true

解决Elasticsearch中xpack.security.enrollment.enabled设置为true的问题

你在Windows Docker中启动Elasticsearch和Kibana后,生成Kibana注册令牌时遇到错误:

ERROR: [xpack.security.enrollment.enabled] must be set to true to create an enrollment token

以下是两种将xpack.security.enrollment.enabled设为true的可行方法:

方法一:修改已运行容器的配置文件

  • 进入elasticsearch容器的shell:
    docker exec -it elasticsearch /bin/sh
    
  • 编辑Elasticsearch的核心配置文件elasticsearch.yml,使用vi编辑器打开:
    vi /usr/share/elasticsearch/config/elasticsearch.yml
    
  • 在文件中添加或修改配置项:
    xpack.security.enrollment.enabled: true
    
  • 保存并退出vi编辑器(按Esc键,输入:wq后回车)
  • 重启elasticsearch容器使配置生效:
    docker restart elasticsearch
    

方法二:重启容器时通过环境变量配置(更快捷)

Elasticsearch支持通过环境变量直接覆盖配置,步骤如下:

  • 先停止并删除当前的elasticsearch容器:
    docker stop elasticsearch
    docker rm elasticsearch
    
  • 重新启动容器,在原有参数基础上添加-e "xpack.security.enrollment.enabled=true":
    docker run -p 127.0.0.1:9200:9200 -p 127.0.0.1:9300:9300 --name elasticsearch -v elasticsearch-data:/usr/share/elasticsearch/data -e "discovery.type=single-node" -e ELASTIC_USER=Andreas -e ELASTIC_PASSWORD=Hirsebrei -e "xpack.security.enrollment.enabled=true" docker.elastic.co/elasticsearch/elasticsearch:8.5.2
    

配置生效后重新生成令牌

配置生效后,直接执行以下命令即可生成Kibana注册令牌:

docker exec -it elasticsearch /usr/share/elasticsearch/bin/elasticsearch-create-enrollment-token --scope kibana

内容的提问来源于stack exchange,提问作者Andreas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 14:40:06