1.查看当前docker的网络设置
docker network ls
这里面 除了mynetwork是自己建的外其他都是docker默认
- 创建自己的网络因es集群需要配置固定的ip,创建自定义的ip段,也可以使用默认的网络或者host模式(请自行搜索)
docker network create --driver bridge --subnet=172.21.0.0/16 my-network
- 设置 vm.max_map_count cmd执行
wsl -d docker-desktop
sysctl -w vm.max_map_count=262144
或者
wsl -d docker-desktop
echo 262144 >> /proc/sys/vm/max_map_count
或参考Using Docker-Desktop for Windows, how can sysctl parameters be configured to permeate a reboot?文章来源:https://www.toymoban.com/news/detail-489646.html
- docker pull elasticsearch:7.1.0 其他版本可自行替换具体配置请参考官方文档es官方地址
- 在本地磁盘任意位置创建三个文件夹用于映射出es配置文件、数据文件、日志及插件(可以docker run 容器后将内部文件docker cp 到本地磁盘)
- 配置elasticsearch.yml
cluster.name: my-application
node.name: node-1
node.master: true
node.data: true
network.host: 172.21.0.2
http.port: 9200
transport.tcp.port: 9300
transport.tcp.compress: true
discovery.seed_hosts:
- 172.21.0.2
- 172.21.0.3
- 172.21.0.4
cluster.initial_master_nodes:
- node-1
- node-2
- node-3
http.cors.enabled: true
http.cors.allow-origin: "*"
bootstrap.system_call_filter: false
- 将当前配置拷贝两个到对应的 elasticsearch1和elasticsearch2的config中变换node.name和network.host就可以保证一会启动镜像和当前配置文件的ip一致就可以
- docker启动容器
docker run -itd --name elasticsearch --net mynetwork --ip 172.21.0.2 -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -v E:\docker\elasticsearch\config:/usr/share/elasticsearch/config -v E:\docker\elasticsearch\data:/usr/share/elasticsearch/data -v E:\docker\elasticsearch\logs:/usr/share/elasticsearch/logs -v E:\docker\elasticsearch\plugins:/usr/share/elasticsearch/plugins -p 9200:9200 -p 9300:9300 elasticsearch:7.1.0
docker run -itd --name elasticsearch-1 --net mynetwork --ip 172.21.0.3 -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -v E:\docker\elasticsearch1\config:/usr/share/elasticsearch/config -v E:\docker\elasticsearch1\data:/usr/share/elasticsearch/data -v E:\docker\elasticsearch1\logs:/usr/share/elasticsearch/logs -v E:\docker\elasticsearch1\plugins:/usr/share/elasticsearch/plugins -p 9201:9200 -p 9301:9300 elasticsearch:7.1.0
docker run -itd --name elasticsearch-2 --net mynetwork --ip 172.18.0.4 -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -v E:\docker\elasticsearch2\config:/usr/share/elasticsearch/config -v E:\docker\elasticsearch2\data:/usr/share/elasticsearch/data -v E:\docker\elasticsearch2\logs:/usr/share/elasticsearch/logs -v E:\docker\elasticsearch2\plugins:/usr/share/elasticsearch/plugins -p 9202:9200 -p 9302:9300 elasticsearch:7.1.0
文章来源地址https://www.toymoban.com/news/detail-489646.html
- docker logs监控下启动日志完成后用http://localhost:9200/_cat/nodes查看节点是否正常
172.21.0.3 24 47 1 0.17 0.34 0.63 mdi - node-2
172.21.0.2 31 47 2 0.17 0.34 0.63 mdi - node-1
172.21.0.4 49 47 1 0.17 0.34 0.63 mdi * node-3
到了这里,关于windows docker搭建es集群的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!