docker安装elasticsearch6.8.3-单机模式

拉取镜像

docker pull elasticsearch:6.8.3

创建容器  测试环境加上-e "discovery.type=single-node"

docker run --name elasticsearch \
--net host -e "discovery.type=single-node" \
elasticsearch:6.8.3

指定目录 
docker run -d --name elasticsearch \
-p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
-v /data/elasticsearch/config :/usr/share/elasticsearch/config \
-v /data/elasticsearch/data:/usr/share/elasticsearch/data \
-v /data/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
--restart=always elasticsearch

直接启动会报错,没有权限

先启动,再把文件cp出来,在用上面命令重新启动

docker run -d --name elasticsearch \
-p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
--restart=always elasticsearch:6.8.3

文件cp出来

docker cp 5d14245e3c24:/usr/share/elasticsearch/config /home/elasticsearch \
&& docker cp 5d14245e3c24:/usr/share/elasticsearch/data /home/elasticsearch \
&& docker cp 5d14245e3c24:/usr/share/elasticsearch/plugins /home/elasticsearch

赋予文件权限

chown -R elasticsearch /home/elasticsearch/

用上面命令重新启动

docker run -d --name elasticsearch \
-p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" \
elasticsearch:6.8.3

提示 : 6.8.3不支持type,建议安装7.1.1

docker pull elasticsearch:7.1.1

docker run -d --name elasticsearch --net=host \
-p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" \
--restart=always elasticsearch:7.1.1

docker cp 容器id:/usr/share/elasticsearch/config /home/elasticsearch \
&& docker cp 容器id:/usr/share/elasticsearch/data /home/elasticsearch \
&& docker cp 容器id:/usr/share/elasticsearch/plugins /home/elasticsearch

赋予文件权限

chown -R elasticsearch /home/elasticsearch/

移除容器重新指定文件启动

docker run -d --name elasticsearch --net=host \
-p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" \
-v /home/elasticsearch/config:/usr/share/elasticsearch/config \
-v /home/elasticsearch/data:/usr/share/elasticsearch/data \
-v /home/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
--restart=always elasticsearch:7.1.1

docker的--net=host有什么用

加了--net=host以后就不需要再做端口映射了.比如docker容器内在8080端口起了一个web server.不加的话需要把本机的某个port比如7979和docker内的8080做一个映射关系,访问的时候访问7979. 加了net=host则直接访问8080.

另外,加了net=host后会使得创建的容器进入命令行好名称显示为主机的名称而不是一串id. 

比如显示root@sc:/#而不是root@3b8e647e5f79:/#

运行容器

docker start elasticsearch

查看日志

docker logs elasticsearch

如果因为内存不足无法启动,则修改启动的内存大小

重新启动ES

docker run --name elasticsearch -d -e ES_JAVA_OPTS="-Xms512m -Xmx512m" --net host -e "discovery.type=single-node" -p 9200:9200 -p 9300:9300 elasticsearch:6.8.3

测试

IP:9200

其他设置

进入容器

docker exec -it elasticsearch /bin/bash

新增跨域配置

修改配置文件/usr/share/elasticsearch/config/elasticsearch.yml

http.cors.enabled: true

http.cors.allow-origin: "*"

安装分词插件 (elasticsearch-plugin在容器进去后的bin目录下面)

docker exec -it 容器id bash

./elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.8.3/elasticsearch-analysis-ik-6.8.3.zip

./elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.7.1/elasticsearch-analysis-ik-7.7.1.zip

如果安装错误,则去下载(找到自己elasticsearch的版本,下载对应的ik版本)

https://github.com/medcl/elasticsearch-analysis-ik/releases/tag/v7.1.1

解压移动到服务器,或移到服务器解压都行(uzip)

重启容器用post测试

访问地址 http://192.168.0.23:9200/_analyze?pretty=true    POST

参数

{
"analyzer":"ik_max_word",
"text":"你是瓜皮吗"
}

如下则代表成功

安装文本抽取插件

./elasticsearch-plugin install ingest-attachment

重启容器

docker restart elasticsearch

更新镜像

docker commit -m="[备注]" [容器ID] elasticsearch:6.8.3

Kibana

上面我们安装了elasticsearch,可以使用curl命令进行操作,我们还是需要一个图像界面进行管理,下面我们安装Kibana,这里注意安装的时候一定要版本对应,这里安装Kibana6.8.3

docker pull kibana:6.8.3

运行kibana

docker run --name kibana6.8.3 -e ELASTICSEARCH_URL=http://172.17.0.2:9200 \

-p 5601:5601 -d [镜像ID]

PS:

参数ELASTICSEARCH_URL一定要是docker里面的内部地址,否则Kibana访问不到Elasticsearch。

进入容器查看内部地址

或者 docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}'  容器id或name

启动成功访问 ip+5601

汉化版

启动时-e 传递环境变量

docker run --name kibana6.8.3 \

-e "I18N_LOCALE=zh-CN" \

-e ELASTICSEARCH_URL=http://172.17.0.4:9200 \

-p 5601:5601 \

-d 54db200915ee

也可以创建配置文件,启动的时候指定配置文件

vi /home/kibana/kibana.yml

#
# ** THIS IS AN AUTO-GENERATED FILE **
#

# Default Kibana configuration for docker target
server.name: kibana
server.host: "0"

#指定elasticsearch的访问ip
elasticsearch.hosts: [ "http://192.168.0.23:9200" ]
xpack.monitoring.ui.container.elasticsearch.enabled: false

docker run -d --name kibana --restart=always -p 5601:5601 -v /home/kibana/kibana.yml:/usr/share/kibana/config/kibana.yml kibana:6.8.3

docker安装elasticsearch6.8.3-单机模式及可视化Kibana6.8.3的更多相关文章

  1. centos7 hive 单机模式安装配置

    前言:由于只是在自己的虚拟机上进行学习,所以对hive只是进行最简单的配置,其他复杂的配置文件没有配置. 1.前提 1.1 安装配置jdk1.8 1.2 安装hadoop2.x hadoop单机模式安 ...

  2. [Hadoop] 在Ubuntu系统上一步步搭建Hadoop(单机模式)

    1 Hadoop的三种创建模式 单机模式操作是Hadoop的默认操作模式,当首次解压Hadoop的源码包时,Hadoop无法了解硬件安装环境,会保守地选择最小配置,即单机模式.该模式主要用于开发调试M ...

  3. Docker安装Alibaba Nacos教程(单机)

    SpringCloudAlibaba实战教程系列 阿里巴巴Nacos官方文档 docker:官网 docker:镜像官网:镜像官网可以所有应用,选择安装环境:会给出安装命令,例如:docker pul ...

  4. Consul安装部署(Windows单机、Docker集群)

    1. Consul简介   Consul 是一个支持多数据中心分布式高可用的服务发现和配置共享的服务软件,由 HashiCorp 公司用 Go 语言开发,基于 Mozilla Public Licen ...

  5. Linux Hadoop2.7.3 安装(单机模式) 一

    Linux Hadoop2.7.3 安装(单机模式) 一 Linux Hadoop2.7.3 安装(单机模式) 二 java环境安装 http://www.cnblogs.com/zeze/p/590 ...

  6. Hadoop单机模式安装-(3)安装和配置Hadoop

    网络上关于如何单机模式安装Hadoop的文章很多,按照其步骤走下来多数都失败,按照其操作弯路走过了不少但终究还是把问题都解决了,所以顺便自己详细记录下完整的安装过程. 此篇主要介绍在Ubuntu安装完 ...

  7. Hadoop单机模式安装-(2)安装Ubuntu虚拟机

    网络上关于如何单机模式安装Hadoop的文章很多,按照其步骤走下来多数都失败,按照其操作弯路走过了不少但终究还是把问题都解决了,所以顺便自己详细记录下完整的安装过程. 此篇主要介绍在虚拟机设置完毕后, ...

  8. Hadoop单机模式安装-(1)安装设置虚拟环境

    网络上关于如何单机模式安装Hadoop的文章很多,按照其步骤走下来多数都失败,按照其操作弯路走过了不少但终究还是把问题都解决了,所以顺便自己详细记录下完整的安装过程. 此篇主要介绍如何在Windows ...

  9. Linux Hadoop2.7.3 安装(单机模式) 二

    Linux Hadoop2.7.3 安装(单机模式) 一 Linux Hadoop2.7.3 安装(单机模式) 二 YARN是Hadoop 2.0中的资源管理系统,它的基本设计思想是将MRv1中的Jo ...

随机推荐

  1. 【阿菜漏洞复现】DeFi 平台 MonoX Finance 漏洞分析及复现

    前言 2021 年 11 ⽉ 30 ⽇,DeFi 平台 MonoX Finance 遭遇攻击,损失共计约 3100 万美元. 造成本次攻击的漏洞主要有两个: 移除流动性的函数未对调用者进行检测,使得任 ...

  2. scanf("%c\n",&a)和scanf("%c",&a)区别

    scanf("%c",&a); 当输入字符的时候,我们按下任意字符 + 回车的时候,回车没有被当作为分隔符,而是作为一个转义字符与输入的字符一起保存在缓存区.第一次scan ...

  3. apt和apt-get的区别

    目录 一.简介 二.apt vs apt-get 为什么apt首先被引入? apt和apt-get之间的区别 apt和apt-get命令之间的区别 我应该使用apt还是apt-get? 三.结论 一. ...

  4. Python绘制饼图

    Python绘制饼图 1.1 对应代码如下图所示 import matplotlib.pyplot as pltfrom pylab import mplmpl.rcParams['font.sans ...

  5. Java 在Word中嵌入多媒体(视频、音频)文件

    Word中可将Office(Word/Excel/PowerPoint).PDF.txt等文件作为OLE对象插入到文档中,双击该对象可直接访问或编辑该文件,除了以上常见的文件格式对象,也可以插入多媒体 ...

  6. 【dva】model中effects函数的解析

    结构 effects: { *pageQuery({ payload = {} }, { select, call, put }) { const res = yield call(pageQuery ...

  7. M语言中的引用(Power Query 之 M 语言)

    名词 查询表 函数 行{}/列[] 单元格 表(Table) 列表(List) 记录(Record) 引用[查询表] =查询表表名 引用[应用的步骤] =步骤名 引用表中的[单元格](深化) =表{行 ...

  8. LuoguB2075 幂的末尾 题解

    Content 求 \(a^b\) 的末三位. 数据范围:\(1\leqslant a\leqslant 100\),\(1\leqslant b\leqslant 10^4\). Solution ...

  9. 分布式系统一致性算法(Raft)

    过去, Paxos一直是分布式协议的标准,但是Paxos难于理解,更难以实现,Google的分布式锁系统Chubby作为Paxos实现曾经遭遇到很多坑. 来自Stanford的新的分布式协议研究称为R ...

  10. 简单聊聊mysql的脏读、不可重复读

    最近,在一次 mysql 死锁的生产事故中,我发现,关于 mysql 的锁.事务等等,我所知道的东西太碎了,所以,我试着用几个例子将它们串起来.具体做法就是通过不断地问问题.回答问题,再加上" ...