docker快速安装Es和kibana的实现步骤

 更新时间:2024年03月27日 08:32:46   作者:pigfu  
在工作过程中,经常需要测试环境搭建Es环境,本文主要介绍了docker快速安装Es和kibana,具有一定的参考价值,感兴趣的可以了解一下

概要

在工作过程中,经常需要测试环境搭建Es环境,本文基于Es V8.12.2来演示如何快速搭建单节点Es和kibana。

服务器默认已按装docker

一、Es

1:拉取镜像

docker pull elasticsearch:8.12.2

2:准备环境

mkdir -p /home/docker/es  #创建挂载目录
mkdir -p /home/docker/es/logs
chmod 777 /home/docker/es/logs #授权
mkdir -p /home/docker/es/data
chmod 777 /home/docker/es/data #授权
docker run -d --name es_temp -p 9200:9200 -p 9300:9300 elasticsearch:8.12.2 #起一个临时容器
docker cp es_temp:/usr/share/elasticsearch/config /home/docker/es/  #复制Es配置文件
docker rm es_temp #删除临时容器

3:修改配置文件
vim /home/docker/es/config/elasticsearch.yml配置文件默认是集群配置,而我们测试环境只需单节点,所以要调整如下:

cluster.name: "docker-single"
network.host: 0.0.0.0

#----------------------- BEGIN SECURITY AUTO CONFIGURATION -----------------------
#
# The following settings, TLS certificates, and keys have been automatically
# generated to configure Elasticsearch security features on 20-03-2024 19:23:28
#
# --------------------------------------------------------------------------------

# Enable security features
xpack.security.enabled: false  #关闭认证

xpack.security.enrollment.enabled: true

# Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents
xpack.security.http.ssl:
  enabled: true
  keystore.path: certs/http.p12

# Enable encryption and mutual authentication between cluster nodes
xpack.security.transport.ssl:
  enabled: true
  verification_mode: certificate
  keystore.path: certs/transport.p12
  truststore.path: certs/transport.p12
# Create a new ciluster with the current node only
discovery.type: single-node  #单节点模式
# Additional nodes can still join the cluster later
#cluster.initial_master_nodes: ["986f0573b289"]

#----------------------- END SECURITY AUTO CONFIGURATION -------------------------

4:启动容器

docker run --privileged -d --name es -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -v /home/docker/es/config:/usr/share/elasticsearch/config -v /home/docker/es/data:/usr/share/elasticsearch/data -v /home/docker/es/logs:/usr/share/elasticsearch/logs -p 9200:9200 -p 9300:9300 elasticsearch:8.12.2

5:检测

curl -X GET http://127.0.0.1:9200/_cluster/health?pretty
{
  "cluster_name" : "docker-single",
  "status" : "green",
  "timed_out" : false,
  "number_of_nodes" : 1,
  "number_of_data_nodes" : 1,
  "active_primary_shards" : 0,
  "active_shards" : 0,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 0,
  "delayed_unassigned_shards" : 0,
  "number_of_pending_tasks" : 0,
  "number_of_in_flight_fetch" : 0,
  "task_max_waiting_in_queue_millis" : 0,
  "active_shards_percent_as_number" : 100.0
}

二、kibana

与Es兼容的kibana版本,按需拉取镜像即可。
1:拉取镜像

docker pull kibana:8.12.2

2:启动容器
kibana就不挂载了,其配置文件/usr/share/kibana/config/kibana.yml,也可以挂载出来做一些配置。

docker run -d --name kibana -p 5601:5601 \
-e ELASTICSEARCH_HOSTS=http://200.200.107.192:9200 \ #Es Url
-e ELASTICSEARCH_USERNAME=root \  #Es 账号,Es不开启认证可不设置
-e ELASTICSEARCH_PASSWORD=123456  \ #Es 密码 ,Es不开启认证可不设置
-e I18N_LOCALE=zh-CN \ #汉化
kibana:8.12.2

3:检测
浏览器访问宿主机ip:5601,即可验证,成功如下:

kibana

三、dcoker compose管理

我们可以用docker compose管理es和kibana。

mkdir -p /etc/docker
vim /etc/docker/docker-compose.yml

内容如下:

# yaml 配置
version: '3'
services:
  es:
    image: "elasticsearch:8.12.2"
    privileged: true
    ports:
      - "9200:9200"
      - "9300:9300"
    volumes:
      - "/home/docker/es/config:/usr/share/elasticsearch/config"
      - "/home/docker/es/data:/usr/share/elasticsearch/data"
      - "/home/docker/es/logs:/usr/share/elasticsearch/logs"
    environment:
      - ES_JAVA_OPTS=-Xms512m -Xmx512m
      - TZ=Asia/Shanghai
    container_name: "es"
  kibana_srv:
    image: "kibana:8.12.2"
    ports:
      - "5601:5601"
    environment:
      - ELASTICSEARCH_HOSTS=http://200.200.107.192:9200
      - ELASTICSEARCH_USERNAME=root
      - ELASTICSEARCH_PASSWORD=123456
      - I18N_LOCALE=zh-CN
    container_name: "kibana"
docker compose -f /etc/docker/docker-compose.yml up es
docker compose -f /etc/docker/docker-compose.yml stop es
docker compose -f /etc/docker/docker-compose.yml up kibana_srv
docker compose -f /etc/docker/docker-compose.yml stop kibana_srv

四、参考

1]:Docker 容器中运行 Kibana

2]:Kibana 的安装

到此这篇关于docker快速安装Es和kibana的文章就介绍到这了,更多相关docker快速安装Es和kibana内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • docker容器里面的root权限获取方法

    docker容器里面的root权限获取方法

    这篇文章主要介绍了docker容器里面的root权限获取方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • 手动构建自己的docker容器镜像实战

    手动构建自己的docker容器镜像实战

    这篇文章主要介绍了如何手动构建自己的镜像并上传到镜像仓库中,文中有详细的代码实例,需要的朋友可以参考阅读
    2023-04-04
  • 教你使用docker查看运行中的容器

    教你使用docker查看运行中的容器

    这篇文章主要介绍了使用docker查看运行中的容器,本文内容简单给大家讲解的很明白,对docker查看运行的容器相关知识感兴趣的朋友一起看看吧
    2022-04-04
  • 使用Docker容器运行Mysql实战记录

    使用Docker容器运行Mysql实战记录

    这篇文章主要给大家介绍了关于使用Docker容器运行Mysql的相关资料,助大家更好的理解和学习使用docker,感兴趣的朋友可以了解下,需要的朋友可以参考下
    2023-09-09
  • Docker构建python Flask+ nginx+uwsgi容器

    Docker构建python Flask+ nginx+uwsgi容器

    这篇文章主要介绍了Docker构建python Flask+ nginx+uwsgi容器,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • Docker compose搭建ELK服务基本使用

    Docker compose搭建ELK服务基本使用

    这篇文章主要为大家介绍了Docker compose搭建ELK服务基本使用,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • IDEA直接打包Docker镜像的实现

    IDEA直接打包Docker镜像的实现

    Docker提供了多种方法来打包镜像,本文主要介绍了IDEA直接打包Docker镜像的实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-06-06
  • docker的常用命令详解

    docker的常用命令详解

    这篇文章主要列举了docker的常用命令,本文给大家介绍的非常详细,有需要的朋友可以参考阅读
    2023-04-04
  • Docker容器搭建android编译环境的实践记录

    Docker容器搭建android编译环境的实践记录

    这篇文章主要介绍了Docker容器搭建android编译环境的实践记录,主要包括部署容器、镜像管理、容器管理等相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • Docker搭建php环境教程详解

    Docker搭建php环境教程详解

    这篇文章主要介绍了Docker搭建php环境教程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-12-12

最新评论