本次试验es和kibana的版本都是6.6.2(为了防止版本不一样出现差别)node
docker run -d --name es -p 9201:9200 -p 9301:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:6.6.2
在本机测试es启动是否成功docker
curl localhost:9201
若是出现下列json文件说明启动成功json
{ "name" : "elasticsearch-0", "cluster_name" : "search-app", "cluster_uuid" : "FAeqYqKKTgCTd_r_OgYzrg", "version" : { "number" : "6.6.2", "build_flavor" : "default", "build_type" : "tar", "build_hash" : "04711c2", "build_date" : "2018-09-26T13:34:09.098244Z", "build_snapshot" : false, "lucene_version" : "7.4.0", "minimum_wire_compatibility_version" : "5.6.0", "minimum_index_compatibility_version" : "5.0.0" }, "tagline" : "You Know, for Search" }
docker run -it -d -e ELASTICSEARCH_URL=http://本机ip:9201 --name kibana_test -p 5601:5601 docker.elastic.co/kibana/kibana:6.6.2
添加ELASTICSEARCH_URL环境变量(会覆盖es的配置文件里的配置)
这里的本机ip是指你的docker宿主机的ip,不是容器的ip,也不能写成localhost,localhost会被解析成容器内的ip地址,这是没法被访问的。浏览器
打开浏览器访问ip+5601
若是出现Kibana server is not ready yet,等会再访问就行了,等会仍是不行的话,应该就是ELASTICSEARCH_URL没有写对app