docker 安装 elasticsearch
Create a new docker network.
docker network create elastic
拉取镜像
docker pull elasticsearch:8.6.2
or
docker pull docker.elastic.co/elasticsearch/elasticsearch:8.11.1
docker run -d --name elasticsearch --net elastic -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" \
-v /usr/local/docker/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-v /usr/local/docker/elasticsearch/config:/usr/share/elasticsearch/config \
-p 9200:9200 -p 9300:9300 c1c64fbdab09
ES_JAVA_OPTS="-Xms128m -Xmx128m"
设置内存大小
discovery.type=single-node
单机模式
-e :
设置网络
根据上面的命令直接启动,可能会启动后没多久就自动关闭了,因为上面挂载了文件,找不到一些配置文件,需要我们先随便启动一个es容器,把容器内的配置文件像复制到我们宿主指定文件内;然后把这个容器删掉,重新启动一个
docker cp eee1b3c8372f:/usr/share/elasticsearch/config/. /usr/local/docker/elasticsearch/config/
然后再用上面的启动命令,就可以了
访问elasticsearch 后台页面:
elasticsearch无法访问ip:9200:
1.进入容器 docker exec -it 容器id /bin/bash 如果需要进去容器提示没有权限也可以使用
docker exec -it --user='root' 容器id /bin/bash
2.进入/usr/share/elasticsearch/config
目录 修改elasticsearch.yml
vim elasticsearch.yml
如果提示没有vi
或者vim
,那么可以输入
apt-get update
apt-get install vim
如果遇到容器内部提示没有权限:
E: List directory /var/lib/apt/lists/partial is missing. - Acquire (13: Permission denied)
把进入容器命令用:docker exec -u 0 -it eee1b3c8372f /bin/bash
然后再容器中输入:
apt-get update
apt-get install vim
把xpack.security.enabled: false
改成 false
重启容器
docker restart 容器id
安装 kibana
docker pull kibana:8.6.2
or
docker pull docker.elastic.co/kibana/kibana:8.11.1
启动容器
docker run --name kibana-8.6.2 --net elastic -d -p 5601:5601 kibana:8.6.2
访问后台地址
http://192.168.170.130:5601/
docker elasticsearch 8.6.2 添加ik 8.6.1插件之后重启失败
把下载的ik分词插件复制到容器的plugins文件中,
docker cp ik/ 070e30b37156:/usr/share/elasticsearch/plugins/
修改ik文件中的plugin-descriptor.properties
把文件中的version改为你的elasticsearch的版本
或者复制到容器前,提前修改在复制到容器中也可以
重启容器,就不会启动失败了
docker restart 容器id