参考源

https://www.bilibili.com/video/BV1og4y1q7M4?spm_id_from=333.999.0.0

https://www.bilibili.com/video/BV1kv411q7Qc?spm_id_from=333.999.0.0

版本

本文章基于 Docker 20.10.11


部署 Elasticsearch 可以参考 Docker Hub 官方文档:https://hub.docker.com/_/elasticsearch

启动

Elasticsearch 十分耗内存,建议启动前先尽量腾出内存空间。

Elasticsearch 需要暴露的端口很多,启动时需要比较复杂的配置。

Elasticsearch 的数据一般需要放置到安全目录,这里又涉及到数据卷技术了。

详情见:Docker 12 数据卷

启动 Elasticsearch

  1. [root@sail sail]# docker run -d --name elasticsearch01 -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.6.2
  2. Unable to find image 'elasticsearch:7.6.2' locally
  3. 7.6.2: Pulling from library/elasticsearch
  4. ab5ef0e58194: Pull complete
  5. c4d1ca5c8a25: Pull complete
  6. 941a3cc8e7b8: Pull complete
  7. 43ec483d9618: Pull complete
  8. c486fd200684: Pull complete
  9. 1b960df074b2: Pull complete
  10. 1719d48d6823: Pull complete
  11. Digest: sha256:1b09dbd93085a1e7bca34830e77d2981521a7210e11f11eda997add1c12711fa
  12. Status: Downloaded newer image for elasticsearch:7.6.2
  13. 6eccd8a777d91764963c2464b30db78b189f5c867633255e996bae088ace6029
  1. [root@sail sail]# docker ps
  2. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
  3. 6eccd8a777d9 elasticsearch:7.6.2 "/usr/local/bin/dock…" 8 seconds ago Up 7 seconds 0.0.0.0:9200->9200/tcp, 0.0.0.0:9300->9300/tcp elasticsearch01

查看 Docker 内存占用

  1. [root@sail sail]# docker stats
  2. CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
  3. 6eccd8a777d9 elasticsearch01 0.00% 1.238GiB / 1.694GiB 73.06% 0B / 0B 292MB / 389kB 43

由此可以看出,Elasticsearch 是多么的耗内存。

启动 Elasticsearch 时建议限制其最大内存占用。

  1. [root@sail sail]# docker run -d --name elasticsearch02 -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx512m" elasticsearch:7.6.2
  2. e6d7fe80cf2961817bd1184b98fd320dce4d9071b80ffb78aa413f484fa498ae
  1. [root@sail sail]# docker stats
  2. CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
  3. e6d7fe80cf29 elasticsearch02 0.78% 379.8MiB / 1.694GiB 21.89% 0B / 0B 106MB / 733kB 44

这样 Elasticsearch 的内存占用就会小很多了。

测试验证

Linux 中可以使用 curl 命令模拟网页访问。

  1. [root@sail sail]# curl localhost:9200
  2. {
  3. "name" : "e6d7fe80cf29",
  4. "cluster_name" : "docker-cluster",
  5. "cluster_uuid" : "MIfPING6SFGVR88knFCf6w",
  6. "version" : {
  7. "number" : "7.6.2",
  8. "build_flavor" : "default",
  9. "build_type" : "docker",
  10. "build_hash" : "ef48eb35cf30adf4db14086e8aabd07ef6fb113f",
  11. "build_date" : "2020-03-26T06:34:37.794943Z",
  12. "build_snapshot" : false,
  13. "lucene_version" : "8.4.0",
  14. "minimum_wire_compatibility_version" : "6.8.0",
  15. "minimum_index_compatibility_version" : "6.0.0-beta1"
  16. },
  17. "tagline" : "You Know, for Search"
  18. }

网页此内容代表 Elasticsearch 部署完成。

Docker 08 部署Elasticsearch的更多相关文章

  1. Docker 简单部署 ElasticSearch

    https://www.cnblogs.com/jianxuanbing/p/9410800.html

  2. Centos8 Docker部署ElasticSearch集群

    ELK部署 部署ElasticSearch集群 1.拉取镜像及批量生成配置文件 # 拉取镜像 [root@VM-24-9-centos ~]# docker pull elasticsearch:7. ...

  3. Docker部署Elasticsearch集群

    http://blog.sina.com.cn/s/blog_8ea8e9d50102wwik.html Docker部署Elasticsearch集群 参考文档: https://hub.docke ...

  4. Docker Compose部署 EFK(Elasticsearch + Fluentd + Kibana)收集日志

    简述 本文用于记录如何使用Docker Compose部署 EFK(Elasticsearch + Fluentd + Kibana) 收集Docker容器日志,使用EFK,可以无侵入代码,获得灵活, ...

  5. 3.ElasticSearch系列之Docker本地部署

    对于之前的部署方式一般用于生产环境,而对于学习而言Docker方式快速部署就好了,本示例在window10环境下进行. 1. Docker使用Elasticsearch 需要对vm.max_map_c ...

  6. 【linux】【elasticsearch】docker部署elasticsearch及elasticsearch-head

    前言 Elasticsearch是一个基于Apache Lucene(TM)的开源搜索引擎.无论在开源还是专有领域,Lucene可以被认为是迄今为止最先进.性能最好的.功能最全的搜索引擎库.但是,Lu ...

  7. docker 部署 elasticsearch + elasticsearch-head + elasticsearch-head跨域问题 + IK分词器

    0.  docker pull 拉取elasticsearch + elasticsearch-head 镜像 1.  启动elasticsearch Docker镜像 docker run -di ...

  8. Docker部署ElasticSearch以及使用

    ElasticSearch笔记 1. ElasticSearch前期 1.1 聊聊ElasticSearch的简介 ​ Elaticsearch,简称为es, es是一个开源的高扩展的分布式全文检索引 ...

  9. Centos8 部署 ElasticSearch 集群并搭建 ELK,基于Logstash同步MySQL数据到ElasticSearch

    Centos8安装Docker 1.更新一下yum [root@VM-24-9-centos ~]# yum -y update 2.安装containerd.io # centos8默认使用podm ...

随机推荐

  1. IOU->GIOU->CIOU->Focal_loss

    IOU->GIOU->CIOU->Focal_loss 参考b站 总览 2022-1-3号补充 该链接下关于算是函数讨论 https://zhuanlan.zhihu.com/p/1 ...

  2. vue新手入门之使用vue框架搭建用户登录注册案例,手动搭建webpack+Vue项目(附源码,图文详解,亲测有效)

    前言 本篇随笔主要写了手动搭建一个webpack+Vue项目,掌握相关loader的安装与使用,包括css-loader.style-loader.vue-loader.url-loader.sass ...

  3. mac安装git、node

    1.需要先安装homebrew(之前的文章里有) 2.安装git brew install git 3.安装node brew install node 3.1.安装成功后,查看版本号 node -v ...

  4. Linux文本搜索及截取操作

    Linux文本搜索及截取操作 cat 查看 grep 搜索 awk 截取 查看dna-server.xml 文件的内容 [root@localhost servers]# cat cwag9002/w ...

  5. go-zero微服务实战系列(四、CRUD热热身)

    上一篇文章我们把整个项目的架子搭建完成,服务在本地也已经能运行起来了,顺利成章的接下来我们就应该开始写业务逻辑代码了,但是单纯的写业务逻辑代码是比较枯燥的,业务逻辑的代码我会不断地补充到 lerbon ...

  6. Linux常用命令-软件包管理工具-rpm

    命令简介 rpm(RPM Package Manager)是一个强大的命令行驱动的软件包管理工具,用来安装.卸载.校验.查询和更新 Linux 系统上的软件包. 语法格式 rpm [OPTION... ...

  7. 27.MySQL 索引、事务与存储引擎

    MySQL 索引.事务与存储引擎 目录 MySQL 索引.事务与存储引擎 MySQL 索引 索引的概念 索引的作用及副作用 索引的作用 索引的副作用 创建索引的原则依据 索引的分类和创建 普通索引 唯 ...

  8. 当JAVA注解、AOP、SpEL相遇,更多可能变为了现实

    常规情况下,我们可以通过业务定制化的注解,借助AOP机制来实现某些通用的处理策略.比如定义个@Permission注解,可以用于标识在具体的方法上,然后用来指定某个方法必须要指定角色的人才能够访问调用 ...

  9. JS中通过Input中id获取输入框中的值

    HTML中 <input type="text" id="ONE" oninput="kpi()"> JS中 function ...

  10. 数组基础篇(对应C++ Primer plus 4.10)

    概要:数组是由一组同类型的元素组成的集合,在内存上是一片连续的存储空间.C++提供了三种数组的表示方法:普通数组,模板类vector(C++98 新增的标准模板库STL提供该模板类)和模板类array ...