Centos7 Docker安装Elasticsearch

一、创建网络

部署kibana容器需要让es和kibana容器互联

docker network create es-net

二、部署Elasticsearch

1、拉取镜像

docker pull docker.elastic.co/elasticsearch/elasticsearch:7.15.2

2、创建挂载点目录

# 创建挂载点目录
mkdir -p /apps/ES/elasticsearch/config /apps/ES/elasticsearch/data /apps/ES/elasticsearch/plugins
# 授权
chmod 777 /apps/ES/elasticsearch/config
chmod 777 /apps/ES/elasticsearch/data
chmod 777 /apps/ES/elasticsearch/plugins
# 创建配置文件
touch /apps/ES/elasticsearch/config/elasticsearch.yml

3、编辑配置信息

vi /apps/ES/elasticsearch/config/elasticsearch.yml 

network.host: 0.0.0.0
http.host: 0.0.0.0
cluster.name: "es-cluster"
http.cors.enabled: true
http.cors.allow-origin: "*"
xpack.security.enabled: false

4、部署单点es,创建es容器

docker run -d \
--restart=always \
--name es \
--network es-net \
-p 9200:9200 \
-p 9300:9300 \
--privileged \
-v /apps/ES/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /apps/ES/elasticsearch/data:/usr/share/elasticsearch/data \
-v /apps/ES/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-e "discovery.type=single-node" \
-e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \
docker.elastic.co/elasticsearch/elasticsearch:7.15.2

5、验证是否部署成功

浏览器打开地址:http://ip:9200,出现如下界面表示部署成功

 

6、检查防火墙是否开启

# 查看状态
firewall-cmd --state
# 查看已开放的端口
firewall-cmd --list-ports
# 添加端口
firewall-cmd --add-port=9200/tcp --permanent
# 重启生效
firewall-cmd --reload

三、部署kibana

1、拉取镜像,版本与es版本保持一致

docker pull docker.elastic.co/kibana/kibana:7.15.2

2、创建挂载点目录

# 创建目录
mkdir -p /apps/ES/kibana/config /apps/ES/kibana/data
# 授权
chmod 777 /apps/ES/kibana/config
chmod 777 /apps/ES/kibana/data

3、创建kibana容器

docker run -d \
--restart=always \
--name kibana \
--network es-net \
-p 5601:5601 \
-e ELASTICSEARCH_HOSTS=http://es:9200 \
docker.elastic.co/kibana/kibana:7.15.2

四、安装插件

1、安装IK分词器

# 进入容器
docker exec -it es /bin/bash
# 安装ik插件,版本号与es版本号一致
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.15.2/elasticsearch-analysis-ik-7.15.2.zip

2、安装ingest-attachment

# 进入容器
docker exec -it es /bin/bash
# 安装ingest-attachment插件
./bin/elasticsearch-plugin install ingest-attachment

3、重启es

docker restart es

五、安装elasticsearch-head

1、拉取镜像

docker pull mobz/elasticsearch-head:5-alpine

2、创建容器

docker run -d -p 9100:9100 docker.io/mobz/elasticsearch-head:5-alpine

3、解决访问报错406 

 修改容器内部usr/src/app/_site/vendor.js文件,将6886、7573行“application/x-www-form-urlencoded”改为“application/json;charset=UTF-8”

# 查看容器信息
docker ps
# 进入容器
docker exec -it gracious_feistel /bin/sh
# 修改_site/vendor.js文件
vi _site/vendor.js
# 显示行号
:set nu
# 查找关键字,n向下查找,N向上查找
/x-www-form-urlencoded

修改完成,退出容器,并重启

# 退出容器
exit
# 重启容器
docker restart gracious_feistel

 

六、docker操作命令

# 查看镜像
docker images
# 删除镜像
docker rmi 镜像ID/名称
# 查看运行中的容器
docker ps
# 查看所有容器
docker ps -a
# 启动容器
docker start 容器ID/名称
# 重启容器
docker restart 容器ID/名称
# 停止容器
docker stop 容器ID/名称
# 删除容器,删除前先停掉容器
docker rm 容器ID/名称

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值