docker 离线部署 elasticsearch
docker hub在线地址:
elasticsearch镜像地址
kibana镜像地址
目录架构
1、离线安装docker 和 docker-compose
具体请参考一下链接进行安装
2、下载elasticsearch镜像 (有网环境)
- 先在有网络的环境下拉取elasticsearch镜像
docker pull elasticsearch:7.9.3
docker pull kibana:7.9.3
3、打包镜像文件到本地
# 参数说明 -o :输出到的文件
docker save elasticsearch:7.9.3 -o elasticsearch.tar
docker save kibana:7.9.3 -o kibana.tar
- 将elasticsearch.tar 、kibana.tar下载到自己本地电脑,在将elasticsearch.tar、kibana.tar上传到要部署的内网服务器上
4、将镜像文件导入到内网环境的服务器上(无网内网环境)
# 创建目录
mkdir -p /usr/local/elasticsearch&& cd /usr/local/elasticsearch
# 导入镜像 参数说明 --input , -i : 指定导入的文件
docker load -i elasticsearch.tar
docker load -i kibana.tar
5、编写docker-compose.yml文件
vim docker-compose.yml
version: '3'
services:
elasticsearch:
image: elasticsearch:7.9.3
container_name: elasticsearch
privileged: true
environment:
- "cluster.name=elasticsearch" #设置集群名称为elasticsearch
- "discovery.type=single-node" #以单一节点模式启动
- "ES_JAVA_OPTS=-Xms512m -Xmx1096m" #设置使用jvm内存大小
- bootstrap.memory_lock=true
volumes:
- ./plugins:/usr/share/elasticsearch/plugins #插件文件挂载
- ./data:/usr/share/elasticsearch/data:rw #数据文件挂载
- ./logs:/user/share/elasticsearch/logs:rw
ports:
- 9200:9200
- 9300:9300
restart: always
#deploy:
# resources:
# limits:
# cpus: "2"
# memory: 1000M
# reservations:
# memory: 200M
kibana:
image: kibana:7.9.3
container_name: kibana
depends_on:
- elasticsearch #kibana在elasticsearch启动之后再启动
environment:
ELASTICSEARCH_HOSTS: http://192.168.127.141:9200 #设置访问elasticsearch的地址
I18N_LOCALE: zh-CN
ports:
- 5601:5601
restart: always
6、启动 elasticsearch
# 启动
docker-compose up -d
# 关闭
docker-compose down
7、赋予目录权限
chmod 777 data
chmod 777 logs
8、关闭防火墙
# centos 麒麟
firewall-cmd --zone=public --add-port=9200/tcp --permanent && firewall-cmd --reload
firewall-cmd --zone=public --add-port=9300/tcp --permanent && firewall-cmd --reload
firewall-cmd --zone=public --add-port=5601/tcp --permanent && firewall-cmd --reload
# ubantu
sudo ufw allow 9200
sudo ufw allow 9300
sudo ufw allow 5601
9、浏览器访问 kibana
# IP填写自己的地址
http://192.168.127.141:5601