【自动化部署学习】【离线】docker安装Elasticsearch(单节点)

docker安装Elasticsearch(单节点)

1、创建挂载文件目录

cd /data
mkdir -p software/elasticsearch/9200/logs software/elasticsearch/9200/data software/elasticsearch/9200/conf
chmod 777 software/elasticsearch/9200/logs software/elasticsearch/9200/data software/elasticsearch/9200/conf

查看创建结果

tree

2、docker拉取镜像

离线部署

在有网络的服务器上拉取镜像,并打包。

#拉取
docker pull elasticsearch:7.10.1

#打包镜像为压缩包
docker save -o /data/app/elasticsearch-7.2.1.tar elasticsearch:7.10.1

#将镜像压缩包上传到离线的服务器上,加载离线镜像
docker load -i elasticsearch-7.2.1.tar

查看并拉取镜像

#搜索镜像
docker search redis

#拉取镜像,未指定版本时,将自动拉取稳定版:last
docker pull redis

#查看镜像
docker images

docker images -a

3、配置文件映射

3.1、日志文件

在 software/elasticsearch/9200/log目录下,创建一个空的日志文件 elasticsearch.log。
[root@docker log]# touch elasticsearch.log
[root@docker log]# ls
elasticsearch.log
修改日志文件权限,将 elasticsearch.log 日志文件的权限设置为可读写。
chmod 777 elasticsearch.log

[root@docker log]# chmod 777 elasticsearch.log
[root@docker log]# ll
总用量 0
-rwxrwxrwx. 1 root root 0 9月  15 11:16 elasticsearch.log

3.2、配置文件

查看镜像信息
docker inspect [镜像ID]

[root@docker software]# docker inspect 39ac5829bade
启动测试容器
docker run --name elasticsearch_test \
--privileged \
-e "discovery.type=single-node" \
-p 9200:9200 \
-p 9300:9300 \
-d elasticsearch:7.10.1

#进入容器
docker exec -it es-test bash

#生成证书(容器根目录执行)
./bin/elasticsearch-certutil ca
#所有选择全部回车

#退出容器 exit,复制容器中的配置到宿主机
docker cp elasticsearch_test:/usr/share/elasticsearch/elastic-stack-ca.p12 /data/software/elasticsearch/9200/conf/
docker cp elasticsearch_test:/usr/share/elasticsearch/config/jvm.options /data/software/elasticsearch/9200/conf/
docker cp elasticsearch_test:/usr/share/elasticsearch/config/elasticsearch.yml /data/software/elasticsearch/9200/conf/

#查看复制出来的配置文件
[root@docker conf]cd /data/software/elasticsearch/9200/conf/
[root@docker conf]# ll
总用量 12
-rw-rw----. 1 root root   53 12月  5 2020 elasticsearch.yml
-rw-------. 1 root root 2527 9月  15 15:58 elastic-stack-ca.p12
-rw-rw----. 1 root root 2301 12月  5 2020 jvm.options

文件复制完毕后使用exit退出容器,然后停止并删除容器。

修改配置文件

进入文件夹编辑配置文件:

[root@docker conf]# cd /data/software/elasticsearch/9200/conf/
[root@docker conf]# vi jvm.options
#修改JVM参数:
-Xms512m
-Xmx512m

[root@docker conf]# vi elasticsearch.yml 
cluster.name: "elasticsearch-cluster"
network.host: 0.0.0.0
http.port: 9200
transport.tcp.port: 9300
http.cors.enabled: true
http.cors.allow-origin: "*"

4、启动docker容器

docker run --restart always  --name elasticsearch_9200 \
--privileged \
-p 9200:9200 \
-p 9300:9300 \
-e "discovery.type=single-node" \
-e "TZ=Asia/Shanghai" \
-e "ES_JAVA_OPTS=-Xms512m -Xmx1096m" \
-v /data/software/elasticsearch/9200/conf/jvm.options:/usr/share/elasticsearch/config/jvm.options \
-v /data/software/elasticsearch/9200/conf/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /data/software/elasticsearch/9200/data:/usr/share/elasticsearch/data \
-v /data/software/elasticsearch/9200/logs:/usr/share/elasticsearch/logs \
-v /data/software/elasticsearch/9200/conf/elastic-stack-ca.p12:/usr/share/elasticsearch/config/elastic-stack-ca.p12 \
-d elasticsearch:7.10.1

5、查看启动结果

docker ps 

#查看全部容器,包括启动失败的容器
docker ps -a 

#删除容器或者镜像
docker rm [容器ID、容器名称、镜像ID]

#进入容器
docker exec -it [容器名称] bash

6、检查日志

docker logs elasticsearch_9200

在这里插入图片描述
在这里插入图片描述

这里表示elasticsearch启动成功。

7、安装head查看工具

#拉取镜像(离线则上传镜像)
 docker pull mobz/elasticsearch-head:5

#启动容器
docker run --name elasticsearch-head -p 9100:9100 -d mobz/elasticsearch-head:5

使用宿主机IP:9100访问:
在这里插入图片描述

如图显示即为访问成功。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值