docker 安装 ElasticSearch

第一步拉取镜像

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

第二步启动容器

创建网络

这个网络将会用来给 es 集群共享,kibana 也是 es 集群的一员

docker network create es-net

启动 elasticsearch

docker run -d --name es -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" -e "discovery.type=single-node" -v es-data:/usr/share/elasticsearch/data -v es-plugins:/usr/share/elasticsearch/plugins --privileged --network es-net -p 9200:9200 -p 9300:9300 elasticsearch:8.11.3
  • -e “ES_JAVA_OPTS=-Xms512m -Xmx512m” 指定 elasticsearch 运行时的内存大小,不要设置太小,这个比较吃内存
  • -e “discovery.type=single-node” 单机模式
  • -v es-data:/usr/share/elasticsearch/data es文件存储路径
  • -v es-plugins:/usr/share/elasticsearch/plugins es插件存储位置
  • Docker–privileged是Docker提供的一个特殊的运行模式,它能够让容器中的进程获取到主机的完整权限,包括root权限。当我们需要在Docker中运行一些特殊的应用程序时,比如需要访问主机设备或者KVM(kernel-based virtual machine)等,就需要使用Docker–privileged模式。

测试是否启动成功

在这里插入图片描述
浏览器输入你的局域网 ip 或者 localhost,端口号 9200,这个端口号是我们将本地端口号与 docker 端口号做得映射,账号密码输入 elastic 123456 这个是 ES 的默认账号密码。

在这里插入图片描述
看到这个就说明搭建完成了。

启动 kibana

启动 kibana 之前有很多准备工作

  1. es 启动之后,默认是需要账号密码的。因此要为 kibana 创建一个用户
  2. 给该用户添加 kibana 系统权限,es 中有一种权限,是专门为 kibana 设计的
  3. 在windows 本地做一个 kibana 配置文件的映射。这是因为 windows 上的 docker 启动的 kibana, 进入容器之后,很多命令是残缺的,你想要修改配置文件及其困难,因此我们直接在外面创建一个 kibana 的配置文件,然后在创建 kibana 容器的时候做一个文件映射就行了。

创建 kibana 账号

# 进入容器
C:\Users\17359>docker exec -it es bash
# 进入可执行文件夹下
elasticsearch@3ea212b93fd2:~$ cd bin/
# 创建用户
elasticsearch@3ea212b93fd2:~/bin$ elasticsearch-users useradd yaowy
Enter new password:
Retype new password:
WARNING: Owner of file [/usr/share/elasticsearch/config/users] used to be [root], but now is [elasticsearch]
# 给新用户增加 kibana_system 权限
elasticsearch@3ea212b93fd2:~/bin$ elasticsearch-users roles -a kibana_system yaowy
WARNING: Owner of file [/usr/share/elasticsearch/config/users_roles] used to be [root], but now is [elasticsearch]

在本地做配置文件映射

在这里插入图片描述
手动创建 kibana.yml 文件,然后写入下面的内容

#
# ** THIS IS AN AUTO-GENERATED FILE **
#

# Default Kibana configuration for docker target
server.host: "0.0.0.0"
server.shutdownTimeout: "5s"
# 这里做了修改
elasticsearch.hosts: [ "http://es:9200" ]
monitoring.ui.container.elasticsearch.enabled: true
# 汉化
i18n.locale: zh-CN
# 账号密码
elasticsearch.username: "yaowy"
elasticsearch.password: "123456"

上面的内容是 kibana 容器刚启动时生成的配置文件的拷贝加以修改和增加

启动 kibana

docker run -d --name kibana -e "ELASTICSEARCH_HOSTS=http://es:9200" --network=es-net -v D:\docker\kibana\config\kibana.yml:/usr/share/kibana/config/kibana.yml -p 5601:5601 kibana:8.11.3

命令中有做配置文件的映射。

键入地址 http://localhost:5601/, 弹出输入框让我们输入账号密码,注意,这里的账号密码不是之前向 kibana 配置文件中写的账号密码,是我们前面用来访问 es 的账号密码,这里没有新增,所以直接输入 elsetic 和 123456 就进去了。

在这里插入图片描述

点击自己浏览。

好了,本地的 es 和 kibana 已经搭建完成了。

  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是使用Docker安装Elasticsearch的步骤: 1. 确保您已经安装DockerDocker Compose。如果您还没有安装,请按照官方文档进行安装。 2. 创建一个新的目录,例如`elasticsearch`,用于存储Elasticsearch配置和数据。 3. 在该目录中创建一个名为`docker-compose.yml`的文件,并将以下内容添加到该文件中: ``` version: '3' services: elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:7.18.0 container_name: elasticsearch environment: - node.name=elasticsearch - discovery.type=single-node ulimits: memlock: soft: -1 hard: -1 volumes: - ./data:/usr/share/elasticsearch/data ports: - 9200:9200 - 9300:9300 ``` 此文件定义了一个名为`elasticsearch`的Docker服务。我们使用7.18.0版本的Elasticsearch镜像,将容器命名为`elasticsearch`,并将环境变量设置为`node.name`和`discovery.type`以使其成为单节点集群。我们还将内存锁定限制设置为无限制,并将Elasticsearch数据存储在我们创建的名为`data`的本地目录中。最后,我们将容器的端口映射到主机的9200和9300端口,以便我们可以通过HTTP和Transport协议访问Elasticsearch。 4. 在终端中导航到`elasticsearch`目录,并运行以下命令以启动Elasticsearch服务: ``` docker-compose up -d ``` 这将使用我们在`docker-compose.yml`文件中定义的配置启动一个名为`elasticsearch`的Docker容器。 5. 要验证Elasticsearch是否正在运行,请运行以下命令: ``` curl -X GET "localhost:9200" ``` 如果您看到Elasticsearch的版本信息,则表示它已成功安装并正在运行。 现在您已经成功地使用Docker安装Elasticsearch,可以开始在其上构建应用程序或进行数据分析。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值