docker安装kibana并配置es的密码

本文介绍了如何在Docker中使用不同的方法配置Kibana与Elasticsearch通信,包括创建新用户、设置环境变量以及通过修改配置文件,以解决超级用户权限问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.拉取镜像

docker pull kibana:8.7.0

2.第一种方式 创建容器并运行

不可用elastic这个用户


[FATAL][root] Error: [config validation of [elasticsearch].username]: value of "elastic" is forbidden. This is a superuser account that cannot write to system indices that Kibana needs to function. Use a service account token instead.

创建新账户
elasticsearch-users useradd username

给账户授权
elasticsearch-users roles -a superuser username
elasticsearch-users roles -a kibana_system username
> 此处可用授权过的账户直接创建并运行容器
docker run -d \
--name kibana \
-e ELASTICSEARCH_HOSTS=http://ip:port \
-e ELASTICSEARCH_USERNAME=username \
-e ELASTICSEARCH_PASSWORD=password \
-p 5601:5601  \
kibana:8.7.0

3.第二种方式 通过修改配置文件达到效果

docker run -d \
--name kibana \
-e ELASTICSEARCH_HOSTS=http://ip:port \
-v kibana_config:/usr/share/kibana/config \
-p 5601:5601  \
kibana:8.7.0

修改 /var/lib/docker/volumes/kibana_config/_data/kibana.yml


server.host: "0.0.0.0"
server.shutdownTimeout: "5s"

#hosts这个也可以在环境变量那改 此处也可以
elasticsearch.hosts: [ "http://elasticsearch:9200" ]
monitoring.ui.container.elasticsearch.enabled: true

#添加这两行即可
elasticsearch.username: elastic
elasticsearch.password: elastic


效果

在这里插入图片描述

### 使用 Docker 安装 Kibana 7.7.1 的具体步骤 #### 准备工作 确保已经安装Docker 启动服务。如果需要与 Elasticsearch 配合使用,则应先按照相应指南完成 Elasticsearch 的部署。 #### 拉取官方镜像 为了获取指定版本的 Kibana,可以执行如下命令来拉取对应标签下的最新稳定版: ```bash docker pull docker.elastic.co/kibana/kibana:7.7.1 ``` 这一步骤会从 Elastic 官方仓库中下载适用于该环境配置Kibana 映像文件[^1]。 #### 创建自定义配置文件 (可选) 建议创建一个外部挂载点用于保存持久化数据以及个性化设置。例如,在主机上建立 `/mydata/kibana/config/` 文件夹,在此处放置 `kibana.yml` 来覆盖默认参数: ```yaml server.name: kibana.example.com elasticsearch.hosts: ["http://localhost:9200"] i18n.locale: "zh-CN" ``` 上述 YAML 片段展示了如何修改服务器名称、连接至本地 ES 实例路径及启用简体中文界面支持[^2]。 #### 启动容器实例 通过下面这条完整的指令能够快速运行起带有特定端口映射关系的服务进程: ```bash docker run \ --name=kibana771 \ -p 5601:5601 \ -v /mydata/kibana/config/kibana.yml:/usr/share/kibana/config/kibana.yml \ -e XPACK_SECURITY_ENCRYPTIONKEY="somethingrandom" \ -d docker.elastic.co/kibana/kibana:7.7.1 ``` 这里设置了容器名为 `kibana771`, 将宿主机器上的第 5601 号 TCP 端口转发给目标应用监听, 加入了之前准备好的配置文档作为输入源, 设置了一个随机的安全加密密钥以增强安全性[^3]. #### 访问 Web 控制台 一旦成功启动之后就可以打开浏览器访问 http://<host_ip>:5601 地址来进行后续操作了. #### 获取容器 IP 地址(如有必要) 有时可能需要用到实际分配给容器内部网络接口的 IPv4 地址,这时可以通过以下方式查询到它的确切数值: ```bash docker inspect --format '{{ .NetworkSettings.IPAddress }}' kibana771 ``` 此命令将会返回形如 `172.17.0.x` 形式的私网IP地址.
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值