使用 docker-compose 启动 es 集群 + kibana

编写 docker-compose yaml

yaml 复制代码
version: 'v3'
services:
  elasticsearch-node1:
    image: elasticsearch:7.17.24
    container_name: 'elasticsearch-node1'
    ports:
      - "9200:9200"
      - "9300:9300"
    environment:
      - node.name=elasticsearch-node1
      - cluster.name=my-es-cluster
      - discovery.seed_hosts=elasticsearch-node2,elasticsearch-node3
      - cluster.initial_master_nodes=elasticsearch-node1,elasticsearch-node2,elasticsearch-node3
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    networks:
      - custom-es
  elasticsearch-node2:
    image: elasticsearch:7.17.24
    container_name: elasticsearch-node2
    ports:
      - "9201:9200"
      - "9301:9300"
    environment:
      - node.name=elasticsearch-node2
      - cluster.name=my-es-cluster
      - discovery.seed_hosts=elasticsearch-node1,elasticsearch-node3
      - cluster.initial_master_nodes=elasticsearch-node1,elasticsearch-node2,elasticsearch-node3
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    networks:
      - custom-es
  elasticsearch-node3:
    image: elasticsearch:7.17.24
    container_name: elasticsearch-node3
    ports:
      - "9202:9200"
      - "9302:9300"
    environment:
      - node.name=elasticsearch-node3
      - cluster.name=my-es-cluster
      - discovery.seed_hosts=elasticsearch-node1,elasticsearch-node2
      - cluster.initial_master_nodes=elasticsearch-node1,elasticsearch-node2,elasticsearch-node3
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    networks:
      - custom-es
  my-es-cluster-kibana:
    container_name: my-es-cluster-kibana
    image: kibana:7.17.24
    ports:
      - "5601:5601"
    environment:
      - ELASTICSEARCH_HOSTS=http://elasticsearch-node1:9200
    networks:
      - custom-es
    depends_on:
      - elasticsearch-node1
      - elasticsearch-node2
      - elasticsearch-node3
networks:
  custom-es:
    driver: bridge

编写 docker-compose 然后在命令行启动这个 docker-compose

启动 docker-compose

docker-compose -f docker-compose.yml -d up

这个命令可以在后台启动一个compose,里面包含 es3个节点的集群+kibana

然后在 chrome 中查询当前的集群信息

分别是

bash 复制代码
# 查询节点信息
curl http://127.0.0.1:9200/_cat/nodes
# 访问 kibana
curl http://127.0.0.1:5601

当我们输入以后可以看到这样的街面就可以正常使用 es 和 kibana 了

关闭启动的docker-compose

docker-compose -f docker-compose.yaml down

相关推荐
岳来14 小时前
docker network 命令学习
docker·docker network
老王熬夜敲代码14 小时前
接入Docker隔离测试
docker·容器·langchain
MGS浪疯17 小时前
让 QClaw 将复杂的 Docker 项目转为 exe!
运维·docker·容器
大气层煮月亮18 小时前
RAG 检索技术 - Elasticsearch
大数据·elasticsearch·搜索引擎
.柒宇.18 小时前
docker容器技术实战
运维·docker·容器
倔强的胖蚂蚁18 小时前
信创企业级 openEuler 24 部署 docker-ce 全指南
运维·docker·云原生·容器
Mark White19 小时前
深入理解 Linux 打印体系:CUPS、驱动、ULD 与 Docker 容器化
linux·运维·docker
岳来20 小时前
docker network 创建 host 和 none 网络模式
网络·docker·容器·docker network
Strugglingler20 小时前
Docker入门
docker·容器
舒一笑20 小时前
Docker Compose 挂载 Nginx 配置的正确姿势(90%的人都踩过这个坑)
运维·docker·容器