求助ELK 8版本带Kibana密码的可用docker-compose配置
ELK 8.x 单节点部署 docker-compose 配置(带密码认证)
ELK 8.x 版本默认强制开启X-Pack安全认证、HTTPS传输、节点注册校验流程,7.x无安全配置直接替换镜像会导致Kibana无法连接ES。
以下配置为单节点场景适配,关闭了单节点不需要的TLS证书校验、自动注册流程,内置固定账号密码,启动后可直接通过密码访问Kibana和Elasticsearch。
前置操作
启动前在宿主机执行以下命令,避免ES启动因系统参数、目录权限问题报错:
# 调整虚拟内存参数,满足ES运行要求 sysctl -w vm.max_map_count=262144 # 创建ES本地数据存储目录并授权(ES容器内运行用户UID为1000) mkdir -p ./esdata chown -R 1000:1000 ./esdata
完整 docker-compose.yaml 配置
version: "3.8" services: elasticsearch: container_name: es-container image: docker.elastic.co/elasticsearch/elasticsearch:8.13.4 environment: - discovery.type=single-node - xpack.security.enabled=true # 单节点场景关闭HTTP层SSL,无需额外配置证书 - xpack.security.http.ssl.enabled=false # 关闭8.x默认的节点注册流程,无需生成 enrollment token - xpack.security.enrollment.enabled=false # 关闭集群节点间TLS加密(单节点无跨节点通信需求) - xpack.security.transport.ssl.enabled=false # elastic超级管理员密码,可自行修改 - ELASTIC_PASSWORD=Es@2024Admin # kibana_system内置账号连接密码,需和下方Kibana配置保持一致 - KIBANA_PASSWORD=Kb@2024Connect # JVM内存配置,可根据服务器配置调整,测试环境最低可设为512m - ES_JAVA_OPTS=-Xms1g -Xmx1g volumes: - ./esdata:/usr/share/elasticsearch/data networks: - es-net ports: - 9200:9200 restart: unless-stopped kibana: container_name: kb-container image: docker.elastic.co/kibana/kibana:8.13.4 environment: # ES关闭HTTP SSL后使用http协议连接 - ELASTICSEARCH_HOSTS=http://es-container:9200 # Kibana连接ES的内置账号配置,密码需和上方ES配置一致 - ELASTICSEARCH_USERNAME=kibana_system - ELASTICSEARCH_PASSWORD=Kb@2024Connect # 关闭Kibana侧注册引导流程 - xpack.security.enrollment.enabled=false # 界面设置为中文,不需要可删除该行 - I18N_LOCALE=zh-CN networks: - es-net depends_on: - elasticsearch ports: - 5601:5601 volumes: - kibanadata:/usr/share/kibana/data restart: unless-stopped networks: es-net: driver: bridge volumes: kibanadata: driver: local
使用方式
- 在docker-compose.yaml所在目录执行命令启动服务:
docker-compose up -d - 等待1-2分钟服务启动完成后,访问
http://服务器IP:5601进入Kibana登录页 - Kibana登录账号为
elastic,密码为配置中ELASTIC_PASSWORD设置的值(示例值为Es@2024Admin) - Elasticsearch API访问地址为
http://服务器IP:9200,认证信息和Kibana登录账号一致
注意事项
- ES和Kibana的镜像版本必须完全一致,否则会出现兼容性连接报错
- 镜像标签
8.13.4可替换为任意8.x稳定版本,只需保证两个服务版本号相同 - 修改密码只需调整对应环境变量值,重新创建容器即可生效
- 当前配置适合测试、单机生产场景,如需开启HTTPS传输可自行补充证书配置
内容的提问来源于stack exchange,提问作者Gaurav Sachan
相关产品推荐
相关产品推荐

