前言:
單獨安裝es相對來說,在不熟悉的情況下,會遇到各種問題。這里本着學習es開發,所以選擇使用docker安裝es及可視化工具。
安裝 es(筆者這里使用7.6.1,建議換docker源為阿里源,不然很容易pull不到)
docker pull docker.elastic.co/elasticsearch/elasticsearch:7.6.1
啟動es
要點: 設定單機 -e "discovery.type=single-node" 並且指定使用內存 ES_JAVA_OPTS="-Xms256m -Xmx256m",否則可能會導致啟動es一閃而過,無法啟動。
docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -e "discovery.type=single-node" -d -p 9201:9200 -p 9301:9300 --name ES02 41072cdeebc5
進入容器修改參數:
docker exec -it es /bin/bash
顯示文件
ls
結果如下:
LICENSE.txt README.textile config lib modules
NOTICE.txt bin data logs plugins
進入配置文件夾
cd config
顯示文件
ls
結果如下:
elasticsearch.keystore ingest-geoip log4j2.properties roles.yml users_roles
elasticsearch.yml jvm.options role_mapping.yml users
修改配置文件
vi elasticsearch.yml
加入跨域配置
http.cors.enabled: true
http.cors.allow-origin: "*"
exit退出容器。
重啟ES
docker restart ${容器id} 這里指的是 -d運行的時候,返回的一串很長的容器id
可視化:
拉取elasticsearch-head
docker pull mobz/elasticsearch-head:5
啟動
docker run -d --name=elasticsearch-head --restart=always -p 9100:9100 docker.io/mobz/elasticsearch-head:5-alpine
訪問http:ip地址:9100/即可看到可視化界面。
注意:如果不設置跨域內容,可視化可能無法看到內容。
