使用Docker快速部署ES单机方式

 更新时间:2024年07月16日 10:35:02   作者:围城客  
这篇文章主要介绍了使用Docker快速部署ES单机方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

使用Docker快速部署ES单机

所有的操作都是基于Docker来的,没有装Docker的话请参照官方文档安装

单机环境部署

1.初始化相关目录

mkdir -p /usr/local/elasticsearch/{config,plugins,data}

2.准备配置文件

vim /usr/local/elasticsearch/config/elasticsearch.yml

将下面的内容粘贴到elasticsearch.yml

# 集群名
cluster.name: docker-cluster
# 节点名
node.name: node
# 监听ip
network.host: 0.0.0.0
# 开启x-pack插件,用于添加账号密码
xpack.security.enabled: true

3.修改系统设置

修改该配置是为了防止es在启动时出现下面的错误

max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
echo "vm.max_map_count=262144" >> /etc/sysctl.conf
/sbin/sysctl -p

4.添加ik分词器

ik分词器为常用的中文分词器,如果你不需要用到中文搜索,这步可以跳过

下载ik分词器:适用于ES 6.8.13的版本,版本不同的自己找ES同版本的tag下载

将下载的elasticsearch-analysis-ik-6.8.13.zip上传到/usr/local/elasticsearch/plugins下

unzip elasticsearch-analysis-ik-6.8.13.zip -d analysis-ik
rm -rf elasticsearch-analysis-ik-6.8.13.zip

5.设置配置权限

因为es不允许使用root用户启动

而es镜像中使用的启动用户uid和gid都是1000

所以我们才需要在这里将相关的目录所有者改为1000

不更改的话,在启动时会出现权限错误异常

chown 1000:1000 /usr/local/elasticsearch -R

6.启动镜像

docker run -d --name elasticsearch \
    -v /usr/local/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
    -v /usr/local/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
    -v /usr/local/elasticsearch/data:/usr/share/elasticsearch/data \
    -v /etc/localtime:/etc/localtime \
    -e ES_JAVA_OPTS="-Xms512m -Xmx512m" \
    -e "discovery.type=single-node" \
    -p 9200:9200 -p 9300:9300 \
    --restart=always \
    elasticsearch:6.8.13

ES_JAVA_OPTS设置了ES的启动内存,自己按需修改

discovery.type=single-node表示该es为单节点,不加这个的话,你的es健康状态会显示为黄色

7.设置密码

docker exec -it elasticsearch bash
elasticsearch-setup-passwords interactive

根据提示,先输入y,然后输入密码,这里会要求输入多次,主要是需要给好几个系统添加密码,用户默认elastic

如果不需要登录将配置文件中的xpack.security.enabled: true 改为false

至此,单节点的elasticsearch就部署好了

浏览器输入:http://172.XX.XX.XX:9200/

显示以上json内容表示部署成功。

PS:如果需要使用docker重新启动ES的话,需要将data/文件夹下的内容删除。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 在 Docker 环境中部署和运行 Nginx 的方法

    在 Docker 环境中部署和运行 Nginx 的方法

    在当今的技术领域,Docker 就像一位神奇的魔法师,能够让我们轻松地管理和部署各种应用程序,这篇文章主要介绍了在 Docker 环境中部署和运行 Nginx 的方法,需要的朋友可以参考下
    2024-12-12
  • 如何清理docker的overlay2 目录

    如何清理docker的overlay2 目录

    本文介绍了如何清理Docker的overlay2目录,包括确认overlay2目录的位置、清理未使用的容器和镜像、手动清理overlay2目录、清理日志文件、限制日志大小以及检查磁盘空间,感兴趣的朋友一起看看吧
    2025-03-03
  • Docker使用Nginx一个端口启动多个前端项目

    Docker使用Nginx一个端口启动多个前端项目

    本文介绍了使用Docker Compose部署Nginx服务的详细流程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-10-10
  • docker 移除掉运行不正常的container操作

    docker 移除掉运行不正常的container操作

    这篇文章主要介绍了docker 移除掉运行不正常的container操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • CentOS7虚拟机安装并配置docker套件

    CentOS7虚拟机安装并配置docker套件

    这篇文章主要介绍了CentOS7虚拟机安装并配置docker套件,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07
  • 详解Docker 容器跨主机多网段通信解决方案

    详解Docker 容器跨主机多网段通信解决方案

    这篇文章主要介绍了Docker 容器跨主机多网段通信解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • Centos7 安装部署Kubernetes(k8s)集群实现过程

    Centos7 安装部署Kubernetes(k8s)集群实现过程

    这篇文章主要为大家介绍了Centos7 安装部署Kubernetes(k8s)集群实现过程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-11-11
  • Mac系统上用Docker搭建lamp环境

    Mac系统上用Docker搭建lamp环境

    这篇文章主要给大家介绍了Mac系统上用Docker如何搭建lamp环境,文章给大家介绍的很详细,有需要的朋友们可以参考借鉴,下面来一起看看吧。
    2016-12-12
  • Docker中删除镜像与容器的完整指南

    Docker中删除镜像与容器的完整指南

    在日常使用 Docker 的过程中,未使用的镜像往往会不断累积,占用大量磁盘空间,学会高效地查找并删除不必要的镜像,不仅能回收存储容量,还能保持系统的整洁,本文将演示如何从系统中删除 Docker 镜像,需要的朋友可以参考下
    2025-09-09
  • Docker创建运行多个mysql容器的方法示例

    Docker创建运行多个mysql容器的方法示例

    这篇文章主要介绍了Docker创建运行多个mysql容器,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-10-10

最新评论