使用docker体验elasticsearch
注意事项:官方文档提示至少要为docker分配4G的内存,否则可能会启动失败。我亲测确实是这样,elasticsearch+kibana 占用了3.3G内存。你可能会遇到这个错误:bootstrap check failure [1] of [1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to
·
注意事项:
- 官方文档提示至少要为docker分配4G的内存(Make sure that Docker is allotted at least 4GiB of memory),否则可能会启动失败。我亲测确实是这样,elasticsearch+kibana 占用了3.3G内存。【后续新发现】:jvm默认内存是2G,加个 -e ES_JAVA_OPTS=“-Xms128m -Xmx128m” 可以改变占用的内存大小。
- 你可能会遇到这个错误:bootstrap check failure [1] of [1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]。这时需要到(宿主机) /etc/sysctl.conf 中增加一行:vm.max_map_count=262144 ,然后执行命令:
sysctl -p
- 拉取elasticsearch镜像,运行容器
docker pull docker.elastic.co/elasticsearch/elasticsearch:8.1.1
# 冒号前面是固定的,冒号后面的版本从这里获取 curl -s "https://artifacts.elastic.co/releases/stack.json" 这段内容是从官网脚本里面发现的 https://elastic.co/start-local
docker network create elastic
docker run --name es01 --net elastic -p 9200:9200 -p 9300:9300 -e ES_JAVA_OPTS="-Xms128m -Xmx128m" -it docker.elastic.co/elasticsearch/elasticsearch:8.1.1
- 在输出信息中找到 password 和enrollment token,然后复制 保存 :

以下操作需要在另一终端中执行
- 复制crt文件到宿主机
docker cp es01:/usr/share/elasticsearch/config/certs/http_ca.crt .
- 连接测试,如果能输出节点信息,说明一切OK
curl --cacert http_ca.crt -u elastic https://localhost:9200 # 需要输入第二步的password
- 拉取kibana镜像,运行容器
docker pull docker.elastic.co/kibana/kibana:8.1.2
docker run --name kib-01 --net elastic -p 5601:5601 docker.elastic.co/kibana/kibana:8.1.2
-
浏览器访问控制台输出的kibana地址

-
在弹出框中输入第二步保存的enrollment token

-
然后会出现elastic的登录页面,用户名和密码是第二步的elastic/password

-
登录成功后,会出现欢迎页,让你添加数据,咱作为新手现在是一脸懵逼,官网上也没有说这一步,就先点 Explore on my own

-
进来过后,点左上角的 三 ,然后找到下面的Dev Tools,就进入了控制台

- 然后就可以做各种操作了

更多推荐


所有评论(0)