300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Docker搭建Elasticsearch方法及启动后服务自动关闭的问题

Docker搭建Elasticsearch方法及启动后服务自动关闭的问题

时间:2023-05-29 04:05:50

相关推荐

Docker搭建Elasticsearch方法及启动后服务自动关闭的问题

太长不看,一句话总结

内存太小,启动命令中添加参数修改虚拟机大小即可

docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -e "discovery.type=single-node" -d -p 9200:9200 -p 9300:9300 --name elasticsearch elasticsearch:7.6.0

配置了属性single-node,否则会不停报warn日志

可能需要设置max_map_count,见下文

Docker搭建Elasticsearch方法

前往dockerhub官网:dockerhub 可查看elasticsearch相应版本

拉取镜像

选取一个版本拉取镜像,如docker pull elasticsearch:6.8.8

不输入版本默认拉取最新版

启动容器

映射端口为9200和9300

docker run -d -p 9200:9200 -p 9300:9300 --name elasticsearch elasticsearch:6.8.8

验证安装

通过docker ps查看已启动容器

输入http://ip地址:9200可以看到返回的json数据,证明安装成功

启动后服务自动关闭的问题

通过docker run命令启动容器后,docker会返回一串码代表成功启动,但是再通过docker ps查看已启动容器,发现elasticsearch并未启动成功

通过docker ps -a可以发现elasticsearch自动退出

查看容器异常日志

docker ps -a可以查看到刚退出的elasticsearch容器,复制容器id

通过docker logs -f 容器id查看日志,可以看到提示空间不足

jvm分配的内存大于系统可用内存数,所以没有足够的空间分配新空间了

需要前往jvm.options文件修改jvm启动参数

使用命令find / -name jvm.options找到jvm.options文件位置

通过vim 文件位置命令进入该文件

找到xms参数位置,将分配空间修改小一些,减小值到系统可用的值,如

-Xms512m-Xmx512m

linux文件相关命令

vim进入文件,如vim /etc/conf/a.conf

shift + 键盘 ; 键,使文件进入可查询状态,输入 / + 查询内容,如/a.conf

键盘 i 键,让文件进入编辑状态,esc键退出编辑

保存修改:shift + 键盘 ; 键,然后输入wq!

不保存修改:shift + 键盘 ; 键,然后输入q!

有可能报max_map_count [65530] is too low之类的错误,需要重置max_map_count大小

sysctl -w vm.max_map_count=262144

查看max_map_count

sysctl -a|grep vm.max_map_count

然后重新启动容器

ps.

容器启动失败后,需要进入docker ps -a并记下容器id

然后通过docker rm 容器id删除当前容器,才可重新启动

pps.

如果是通过阿里云/腾讯云等云服务器的docker部署,千万不要忘记开放端口号!!!!!!!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。