当前位置: 首页 > wzjs >正文

温州网站建设免费咨询如何在导航网站上做链接

温州网站建设免费咨询,如何在导航网站上做链接,订阅WordPress,开封建设企业网站公司Docker 安装 Elasticsearch 8.x 前言一、准备工作二、设置容器的目录结构三、启动一个临时的容器来复制配置文件四、复制配置文件到本地目录五、删除临时容器六、创建并运行容器,挂载本地目录七、修改文件配置监听端口八、端口配置:Host 网络模式 vs Por…

Docker 安装 Elasticsearch 8.x

  • 前言
  • 一、准备工作
  • 二、设置容器的目录结构
  • 三、启动一个临时的容器来复制配置文件
  • 四、复制配置文件到本地目录
  • 五、删除临时容器
  • 六、创建并运行容器,挂载本地目录
  • 七、修改文件配置监听端口
  • 八、端口配置:Host 网络模式 vs Port 映射模式
    • 1. Host 网络模式
    • 2. Port 映射模式
  • 九、查看日志和检查容器状态
  • 十、访问服务
  • 十一、Elasticsearch 常用操作命令


前言

在现代应用架构中,Elasticsearch 是一款强大的分布式搜索引擎,广泛应用于日志分析、实时搜索、数据可视化等场景。通过 Docker 部署 Elasticsearch,可以快速搭建、灵活扩展,并与容器化平台无缝集成。

本文将详细介绍如何使用 Docker 安装和配置 Elasticsearch 8.x,包括目录结构设置、配置文件管理、容器启动与管理、端口配置、日志查看、服务访问等内容,帮助你快速搭建一个高效、可维护的 Elasticsearch 环境。

在这里插入图片描述


一、准备工作

首先,确保你的系统上已经安装了 Docker。

Linux上进行Docker安装有两种方式:

  1. Docker自动化安装
  2. Docker手动安装

可以根据该文章的步骤进行安装:https://blog.csdn.net/weixin_44876263/article/details/136714078?spm=1001.2014.3001.5502

二、设置容器的目录结构

为了持久化存储日志、数据、配置和插件,需要在宿主机上创建对应目录,并赋予 Elasticsearch 容器内部用户的写权限。

# 安装路径
DIR="/opt/docker/demo"
DOCKER_NAME="docker-elasticsearch"# 创建目录结构
mkdir -p "$DIR/elasticsearch/logs"
mkdir -p "$DIR/elasticsearch/data"
mkdir -p "$DIR/elasticsearch/config"
mkdir -p "$DIR/elasticsearch/plugins"# 赋予文件权限
chmod -R 777 $DIR/elasticsearch/

三、启动一个临时的容器来复制配置文件

启动一个临时的 Elasticsearch 容器,用于复制默认配置文件到宿主机。

docker run -d \--restart=always \--name elasticsearch \--network host \-p 9388:9200 \-p 9389:9300 \--privileged \-e "discovery.type=single-node" \-e "ES_JAVA_OPTS=-Xms2g -Xmx2g" \docker.elastic.co/elasticsearch/elasticsearch:8.17.0

四、复制配置文件到本地目录

将容器中的配置文件复制到宿主机的对应目录。

docker cp elasticsearch:/usr/share/elasticsearch/data $DIR/elasticsearch/
docker cp elasticsearch:/usr/share/elasticsearch/plugins $DIR/elasticsearch/
docker cp elasticsearch:/usr/share/elasticsearch/config $DIR/elasticsearch/
docker cp elasticsearch:/usr/share/elasticsearch/logs $DIR/elasticsearch/

五、删除临时容器

docker stop elasticsearch
docker rm elasticsearch

六、创建并运行容器,挂载本地目录

使用以下命令启动 Elasticsearch 容器,并挂载本地目录。

docker run -d \--name "$DOCKER_NAME" \--restart=always \--network host \-v "$DIR/elasticsearch/data:/usr/share/elasticsearch/data" \-v "$DIR/elasticsearch/plugins:/usr/share/elasticsearch/plugins" \-v "$DIR/elasticsearch/config:/usr/share/elasticsearch/config" \-v "$DIR/elasticsearch/logs:/usr/share/elasticsearch/logs" \-e "discovery.type=single-node" \-e "ES_JAVA_OPTS=-Xms2g -Xmx2g" \-e "ELASTIC_PASSWORD=123456" \docker.elastic.co/elasticsearch/elasticsearch:8.17.0

七、修改文件配置监听端口

修改配置文件 $DIR/elasticsearch/config/elasticsearch.yml

cluster.name: "docker-cluster"network.host: 0.0.0.0http.port: 9200

八、端口配置:Host 网络模式 vs Port 映射模式

1. Host 网络模式

docker run -d \--restart=always \--name "$DOCKER_NAME" \--network host \-v "$DIR/elasticsearch/data:/usr/share/elasticsearch/data" \-v "$DIR/elasticsearch/plugins:/usr/share/elasticsearch/plugins" \-v "$DIR/elasticsearch/config:/usr/share/elasticsearch/config" \-v "$DIR/elasticsearch/logs:/usr/share/elasticsearch/logs" \-e "discovery.type=single-node" \-e "ES_JAVA_OPTS=-Xms2g -Xmx2g" \-e "ELASTIC_PASSWORD=123456" \docker.elastic.co/elasticsearch/elasticsearch:8.17.0
  • 特点

    在 Host 网络模式下,容器共享宿主机的网络栈,容器内的网络接口直接映射到宿主机的网络接口。​这意味着容器可以使用宿主机的 IP 地址和端口进行通信。​对于 Elasticsearch 来说,使用 Host 网络模式可以减少网络延迟,提高性能。

  • 优点

    • 简化网络配置,无需额外的 -p 端口映射。

    • 延迟更低,吞吐更高。

  • 缺点

    • 与宿主机完全共享端口,若宿主机已有同端口服务运行,会冲突。

    • 安全隔离较弱,容器网络直接暴露给宿主机。

2. Port 映射模式

docker run -d \--restart=always \--name "$DOCKER_NAME" \-p 9201:9200 \-p 9301:9300 \-v "$DIR/elasticsearch/data:/usr/share/elasticsearch/data" \-v "$DIR/elasticsearch/plugins:/usr/share/elasticsearch/plugins" \-v "$DIR/elasticsearch/config:/usr/share/elasticsearch/config" \-v "$DIR/elasticsearch/logs:/usr/share/elasticsearch/logs" \-e "discovery.type=single-node" \-e "ES_JAVA_OPTS=-Xms2g -Xmx2g" \-e "ELASTIC_PASSWORD=123456" \docker.elastic.co/elasticsearch/elasticsearch:8.17.0
  • 特点

    在 Port 映射模式下,容器使用 Docker 的默认桥接网络,容器内的端口通过宿主机的端口进行映射。​这种方式适用于需要将容器服务暴露给外部访问的场景。​例如,将容器的 9200 端口映射到宿主机的 9201 端口。

  • 优点

    • 容器与宿主机网络隔离,提高安全性。

    • 可以在同一宿主机上运行多个容器,避免端口冲突。

  • 缺点

    • 可能增加网络延迟,影响性能。

    • 需要手动配置端口映射,增加配置复杂度。

九、查看日志和检查容器状态

使用以下命令查看 Elasticsearch 容器的日志:

docker logs -f "$DOCKER_NAME"

要查看容器的状态,可以使用:

docker ps -a

如果容器未运行,可以使用以下命令启动:

docker start "$DOCKER_NAME"

十、访问服务

在浏览器中访问以下地址,检查 Elasticsearch 是否正常运行
默认的用户名为:elastic
密码:123456

http://localhost:9200

如果使用了 Port 映射模式,并将容器的 9200 端口映射到宿主机的 9201 端口,则应访问:

http://localhost:9201

应该看到类似以下的 JSON 响应:

{"name" : "docker-cluster","cluster_name" : "docker-cluster","cluster_uuid" : "abcdefghijklmno","version" : {"number" : "8.17.0","build_flavor" : "default","build_type" : "deb","build_hash" : "1234567890abcdef","build_date" : "2025-04-15T12:34:56.789Z","build_snapshot" : false,"lucene_version" : "8.10.0","minimum_wire_compatibility_version" : "7.10.0","minimum_index_compatibility_version" : "7.10.0"},"tagline" : "You Know, for Search"
}

在这里插入图片描述

十一、Elasticsearch 常用操作命令

  1. 检查集群健康状态

    使用以下命令检查 Elasticsearch 集群的健康状态:

    curl -X GET "localhost:9200/_cluster/health?pretty"
    
  2. 查看所有索引

    使用以下命令检查 Elasticsearch 集群的健康状态:

    curl -X GET "localhost:9200/_cat/indices?v"
    
  3. 创建索引

    使用以下命令创建一个新的索引:

    curl -X PUT "localhost:9200/my_index"
    
  4. 删除索引

    使用以下命令删除指定的索引:

    curl -X DELETE "localhost:9200/my_index"
    
  5. 查询索引中的所有文档

    使用以下命令查询索引中的所有文档:

    curl -X GET "localhost:9200/my_index/_search?q=*:*
    
  6. 修改用户密码

    Elasticsearch 提供了 elasticsearch-reset-password 工具,用于重置用户密码。​例如,重置 elastic 用户的密码:

    docker exec -it elasticsearch bin/elasticsearch-reset-password -u elastic
    

    执行后,系统将提示输入新密码并确认。​请确保在生产环境中妥善保管密码。

  7. 查看集群节点信息

    curl -X GET "localhost:9200/_cat/nodes?v"
    
  8. 查看集群分片分配情况

    curl -X GET "localhost:9200/_cat/shards?v"
    
  9. 查看集群所有分配情况

    curl -X GET "localhost:9200/_cat/allocation?v"
    
  10. 查看索引文档数量

    curl -X GET "localhost:9200/my_index/_count"
    

文章转载自:

http://d2KwXsl2.dtnjr.cn
http://7GmdNVjV.dtnjr.cn
http://EIaB3nhA.dtnjr.cn
http://cm6GzrVI.dtnjr.cn
http://y3cNamGU.dtnjr.cn
http://GqrdrlfX.dtnjr.cn
http://H5A37RO0.dtnjr.cn
http://RrpqvSUN.dtnjr.cn
http://9SLbuo2z.dtnjr.cn
http://gKxYF7Gz.dtnjr.cn
http://XtOP0Txm.dtnjr.cn
http://OnmtO0sB.dtnjr.cn
http://4esUEk5M.dtnjr.cn
http://mcnOcNOg.dtnjr.cn
http://319zfz9o.dtnjr.cn
http://1cVoWt4r.dtnjr.cn
http://otV2Lp2w.dtnjr.cn
http://3DlAe0dK.dtnjr.cn
http://q0ZhHayM.dtnjr.cn
http://6v8d0sCy.dtnjr.cn
http://1PWAurad.dtnjr.cn
http://bdWuHnZ7.dtnjr.cn
http://Tze7e0VO.dtnjr.cn
http://OzbmMfOO.dtnjr.cn
http://SXlzm9kk.dtnjr.cn
http://cIqpcdzx.dtnjr.cn
http://h3I4gTgP.dtnjr.cn
http://tgqRxT1y.dtnjr.cn
http://ThFf0uJJ.dtnjr.cn
http://bPXIfhDN.dtnjr.cn
http://www.dtcms.com/wzjs/773654.html

相关文章:

  • 成都学校网站建珠宝 网站欣赏
  • 手机wap网站免费建站网站制作公司哪家专业
  • 开发板停止维护后如何处理网站文字很少怎么做优化
  • 北京时间网站建设在线crm系统
  • 公司网站设计怎么做国际本科
  • 某网站的安全建设方案学做网站视频教程
  • 四川省住房与城乡建设 厅网站百度推广优化中心
  • 粉色帝国网站聚名网官网登录
  • 做二手车网站需要什么手续费用wordpress做微网站
  • 微信小程序网站建设推广成都开网站
  • 云南网站建设小程序开发定制网站和模板网站有何区别
  • html怎么做网站设计wordpress后端
  • 商城网站开发报价电子商务平台的营销推广方案
  • 简约个人网站模板wordpress如何导入数据
  • 小牛在线网站建设建设上海公司网站
  • 企业网站建设网页设计前端设计师主要做什么
  • 嘉定房产网百度seo排名报价
  • 个人网站制作成品怎么做多语言网站
  • 卫生网站建设方案网站宝建站助手
  • 深圳网站建设是哪个网站建设 学习什么
  • 企业网络推广网站郑州网站优化哪家好
  • 西安网站建设gwordpress快递主题
  • 企业网站是怎么建站的网站策划书最后一步怎么做
  • 西安网站托管维护泰安肥城做网站的公司
  • 建零售网站还是怎么建设自己的网页
  • 企业网站建设解决方案 成都企业信息管理系统er图
  • php网站怎么做post订单网页定制哪家不错
  • 莱西做网站公司wordpress模板 导购
  • 网站一般用什么免费字体建立模板
  • 网站设计的需求网页设计职位