ElasticSearch 部署ES(docker)

部署ElastSearch(Docker)

[Step 1] : 拉取 ElasticSearch 镜像

docker pull elasticsearch:7.14.0




[Step 2] : 创建网络➡️创建目录➡️启动容器➡️拷贝文件➡️授权文件➡️删除容器

# 创建网络
docker network create elastic

# 创建目录
mkdir -p /data/elasticsearch/{config,data,logs,plugins}

# 启动容器
docker run --name elasticsearch --restart=always \
-p 9200:9200 -p 9300:9300 \
--privileged --network elastic \
-e "discovery.type=single-node" \
-d elasticsearch:7.14.0

# 拷贝文件
docker cp -a elasticsearch:/usr/share/elasticsearch/config/ /data/elasticsearch
docker cp -a elasticsearch:/usr/share/elasticsearch/data/ /data/elasticsearch
docker cp -a elasticsearch:/usr/share/elasticsearch/logs/ /data/elasticsearch
docker cp -a elasticsearch:/usr/share/elasticsearch/plugins/ /data/elasticsearch

# 授权文件
chmod -R 777 /data/elasticsearch/{config,data,logs,plugins}

# 删除容器
docker rm -f elasticsearch



[Step 3] : 启动 ElasticSearch 容器

docker run --name elasticsearch --restart=always \
-p 9200:9200 -p 9300:9300 \
--privileged=true --network elastic \
-e ES_JAVA_OPTS="-Xms256m -Xmx512m" \
-e "discovery.type=single-node" \
-e KEYSTORE_USERNAME=elastic \
-e KEYSTORE_PASSWORD=elastic \
-v /data/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-v /data/elasticsearch/data:/usr/share/elasticsearch/data \
-v /data/elasticsearch/logs:/usr/share/elasticsearch/logs \
-v /data/elasticsearch/config:/usr/share/elasticsearch/config \
-d elasticsearch:7.14.0

相关参数解释 :

  1. --name elasticsearch: 给这个容器起名为 elasticsearch,方便管理和识别。
  2. --restart=always: 设置容器的重启策略。当容器意外停止时,它将自动重启。
  3. -p 9200:9200 -p 9300:9300: 端口映射, 9200 端口用于 HTTP 访问, 9300 端口用于节点间的内部通信
  4. --privileged=true: 以特权模式运行容器,这赋予容器更多的系统权限,类似于主机上的 root 权限。
  5. --network elastic: 将容器加入名为 elastic 的 Docker 网络中,这可以方便容器之间的通信。
  6. -e ES_JAVA_OPTS="-Xms256m -Xmx512m": 用于配置 JVM 的最大最小堆内存。
  7. -e "discovery.type=single-node": 设置 Elasticsearch 为单节点模式
  8. -e KEYSTORE_USERNAME=elastic-e KEYSTORE_PASSWORD=elastic: 设置 Elasticsearch 的认证用户名和密码为 elastic,这些变量将用于存储在密钥库中的凭据。
  9. -v /data/elasticsearch/plugins:/usr/share/elasticsearch/plugins: 插件持久化
  10. -v /data/elasticsearch/data:/usr/share/elasticsearch/data: 数据持久化
  11. -v /data/elasticsearch/logs:/usr/share/elasticsearch/logs: 日志持久化
  12. -v /data/elasticsearch/config:/usr/share/elasticsearch/config: 配置持久化
  13. -d: 以后台模式(守护进程模式)运行容器。
  14. elasticsearch:7.14.0: 指定使用 elasticsearch:7.14.0 镜像启动容器。


[Step 4] : 访问 ElasticSearch 服务

# IP地址改成自己的
http://172.29.32.233:9200/




部署 Kibana ( Docker )

[Step 1] : 拉取 Kibana 镜像

docker pull kibana:7.14.0



[Step 2] : 创建目录 ➡️ 启动容器 ➡️ 拷贝文件 ➡️ 授权文件 ➡️ 删除容器

# 创建目录
mkdir -p /data/kibana/{conf,plugins}

# 启动容器
docker run --name kibana --restart=always \
-e ELASTICSEARCH_HOSTS=http://elasticsearch:9200 \
-e "I18N_LOCALE=zh-CN" \
-p 5601:5601 --network=elastic \
-d kibana:7.14.0

# 拷贝文件
docker cp kibana:/usr/share/kibana/config/kibana.yml /data/kibana/conf/

# 授权文件
chmod -R 777 /data/kibana/conf/kibana.yml /data/kibana/plugins

# 删除容器
docker rm -f kibana



[Step 3] : 启动 Kibana 容器

docker run --name kibana --restart=always \
-e ELASTICSEARCH_HOSTS=http://elasticsearch:9200 \
-e "I18N_LOCALE=zh-CN" \
-p 5601:5601 --network=elastic \
-v /data/kibana/plugins:/usr/share/kibana/plugins \
-v /data/kibana/conf/kibana.yml:/usr/share/kibana/config/kibana.yml \
-d kibana:7.14.0

相关参数解释 :

  1. docker run : 这是用来启动一个新的 Docker 容器的命令。
  2. --name kibana : 通过给容器指定一个名称,可以更方便地管理和操作容器。
  3. --restart=always : 无论容器因为什么原因停止,Docker 守护进程都会自动尝试重新启动它
  4. -e ELASTICSEARCH_HOSTS=http://elasticsearch:9200 : 告诉 Kibana 连接到名为 elasticsearch 的 Elasticsearch 服务,地址为 http://elasticsearch:9200
  5. -e "I18N_LOCALE=zh-CN" : 将 Kibana 的界面语言设置为简体中文(zh-CN)。
  6. -p 5601:5601 : 将宿主机的 5601 端口映射到容器的 5601 端口。
  7. --network=elastic : 将容器连接到名为 elastic 的 Docker 网络。这使得 Kibana 可以通过 Docker 网络与 elasticsearch 容器通信,而不需要通过宿主机网络。
  8. -v /data/kibana/plugins:/usr/share/kibana/plugins : 插件持久化
  9. -v /data/kibana/conf/kibana.yml:/usr/share/kibana/config/kibana.yml : 配置持久化
  10. -d kibana:7.14.0以守护进程模式运行容器(后台运行),并指定使用 kibana:7.14.0 镜像



[Step 4] : 访问 Kibana 控制台

# 换成自己的IP地址
http://172.29.32.233:5601/

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值