创建网络:es和kibana容器互联
bash
docker network create es-net
加载镜像
bash
docker pull elasticsearch:7.12.1
运行
bash
docker run -d --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -v ${你的路径}/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v ${你的路径}/data:/usr/share/elasticsearch/data -v ${你的路径}/plugins:/usr/share/elasticsearch/plugins --network es-net -d elasticsearch:7.12.1
出现错误
bash
docker: Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting "/run/desktop/mnt/host/d/docker/es/config/elasticsearch.yml" to rootfs at "/usr/share/elasticsearch/config/elasticsearch.yml": mount /run/desktop/mnt/host/d/docker/es/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml (via /proc/self/fd/14), flags: 0x5000: not a directory: unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type.
解决办法
改成如下:并在elasticsearch.yml 中添加配置:http.host: 0.0.0.0
重启容器
bash
docker restart es
浏览器访问
bash
locahost:9200
出现以上数据说明安装好了es.
安装kibana- 加载镜像
bash
docker pull kibana:7.12.1
运行容器
bash
docker run -d --name kibana -p 5601:5601 -e ELASTICSEARCH_HOSTS=http://es:9200 --network=es-net kibana:7.12.1
注意:es
和kibana
版本要一致!
浏览器访问kibana
bash
localhost:5601