目录
1.确保docker环境正常
2.拉取ES和Kibana镜像
docker pull elasticsearch:7.4.2
docker pull kibana:7.4.2
3.创建elasticsearch.yml外部配置文件
mkdir -p /mydata/elasticsearch/config
mkdir -p /mydata/elasticsearch/data
echo "http.host: 0.0.0.0">/mydata/elasticsearch/config/elasticsearch.yml #取消主机IP限制
chmod -R 777 /mydata/elasticsearch/ #授权
4.启动ES容器
docker run --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx512m" -v /mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /mydata/elasticsearch/data:/usr/share/elasticsearch/data -v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins -d elasticsearch:7.4.2
解释:绑定端口,单节点模式启动,添加内存参数配置,导入外部配置文件启动ES
确保ES容器正常启动,可以顺手设置ES开机启动:
docker update elasticsearch --restart=always
5.确认端口开放或直接关闭防火墙
查看防火墙状态:systemctl status firewalld.service
暂时关闭防火墙:systemctl stop firewalld.service
永久关闭防火墙:systemctl status firewalld.service
6.宿主机浏览器访问ES端口
前提:确保宿主机可以ping通虚拟机
7.启动Kibana
注:启动Kibana时需要配置ES的IP,如果是用docker容器启动ES的话,这里的IP指的是docker内部ES容器的IP,具体可以通过inspect指令查看:
docker inspect 容器id
所以我们启动Kibana容器的时候需要链接到172.17.0.2这个地址,启动Kibana:
docker run --name kibana -e ELASTICSEARCH_HOSTS=http://172.17.0.2:9200 -p 5601:5601 -d kibana:7.4.2
顺手设置Kibana开机自启:
docker update kibana --restart=always
宿主机浏览器访问5601端口:
8.设置Kibana汉化
进入容器内部,修改"kibana.yml"配置文件:
docker exec -it kibana /bin/bash
cd config
vi kibana.yml
新增汉化配置
i18n.locale: "zh-CN"
wq exit 保存退出,docker restart kibana 重启Kibana容器,宿主机浏览器再次访问: