Docker 安装Elasticsearch教程(保姆级)

Docker 安装Elasticsearch教程(保姆级)

在这里插入图片描述
​ 首先,es可能需要的内存数量比较大,所以再docker中安装之气之前需要先设置一下VMA的数量

  1. 查看max_map_count的值 默认是65530

cat /proc/sys/vm/max_map_count
  1. 重新指定max_map_count

sysctl -w vm.max_map_count=262144

关于 max_map_count 的解释如下:

1.文件包含限制一个进程可以拥有的VMA(虚拟内存区域)的数量。

2.虚拟内存区域是一个连续的虚拟地址空间区域。

3.在进程的生命周期中,每当程序尝试在内存中映射文件,链接到共享内存段,或者分配堆空间的时候,这些区域将被创建。

4.调优这个值将限制进程可拥有VMA的数量。

5.限制一个进程拥有VMA的总数可能导致应用程序出错,因为当进程达到了VMA上线但又只能释放少量的内存给其他的内核进程使用时,操作系统会抛出内存不足的错误。

3.下载镜像运行

#拉取镜像
docker pull elasticsearch:7.7.0

#启动镜像
docker run --name elasticsearch -d -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" -p 9200:9200 -p 9300:9300 elasticsearch:7.7.0

​ 其中的一下参数讲解

--name表示镜像启动后的容器名称  

-d: 后台运行容器,并返回容器ID;

-e: 指定容器内的环境变量

-p: 指定端口映射,格式为:主机(宿主)端口:容器端口

4,访问ES

地址输入你得ip:9200 ,然后出现一下内容表示安装成功

{
  "name" : "1c404e407e83",
  "cluster_name" : "docker-cluster",
  "cluster_uuid" : "tfSAyLgasdaSDqcb1Zdkg",
  "version" : {
    "number" : "7.7.0",
    "build_flavor" : "default",
    "build_type" : "docker",
    "build_hash" : "81a1e9eda8e6183fASDSA86246f6dced26a10eaf",
    "build_date" : "2020-05-12T02:01:37.602180Z",
    "build_snapshot" : false,
    "lucene_version" : "8.5.1",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

5.安装elasticsearch-head

​ head插件是ES的一个可视化管理插件,用来监视ES的状态,并通过head客户端和ES服务进行交互,比如创建映射、创建索引等。从ES6.0开始,head插件支持使得node.js运行。

(这个可以选择安装在docker中 也可以选择 下载安装包 然后再win本地解压 然后先写一下win中的使用吧,个人感觉在windos中会方便一点)

window

    1、安装

    下载head:
    下载地址:https://github.com/mobz/elasticsearch-head

    2、运行
    #用黑窗口打开:
	npm run start

    3、测试
    浏览器访问:http://127.0.0.1:9100

docker (Linux)

#拉取镜像
docker pull mobz/elasticsearch-head:5

#创建容器
docker create --name elasticsearch-head -p 9100:9100 mobz/elasticsearch-head:5

#启动容器
docker start elasticsearch-head
or
docker start 容器id (docker ps -a 查看容器id )

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CPG9ycuN-1685001694769)(C:\Users\Echo\AppData\Roaming\Typora\typora-user-images\1685000277691.png)]

然后打开后可能存在连接不上的情况,因为这个时前后端分离项目,需要进行跨域处理**

6.修改docker中elasticsearch的elasticsearch.yml文件

docker exec -it elasticsearch /bin/bash (进不去使用容器id进入)

vi config/elasticsearch.yml

在最后加入下面两行

http.cors.enabled: true 
http.cors.allow-origin: "*"

退出重启

exit
docker restart 容器id

7.ElasticSearch-head 操作时不修改配置,默认会报 406错误码

#复制vendor.js到外部
docker cp 容器id:/usr/src/app/_site/vendor.js /usr/local/

#修改vendor.js
vim vendor.js

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0vQ6Iy4v-1685001694770)(C:\Users\Echo\AppData\Roaming\Typora\typora-user-images\1685001046570.png)]

然后如果找不到行号

set nu //展示行号

:行号  回车   //跳转指定行号

修改完成在复制回容器

docker cp /usr/local/vendor.js  容器id:/usr/src/app/_site

重启elasticsearch-head

docker restart 容器id

随后连接就可以正常看到了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值