我正在尝试在开发Spring Boot应用程序时创建本地kibana /弹性堆栈。当我将其作为单个容器启动时,我可以成功地将应用程序连接到Elastic上:
docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:6.2.3
我的应用程序可以在9300上连接,并且我的Web浏览器可以看到它在localhost:9200上已启动
所以...我尝试启动提供的堆栈docker-docker docker-compose文件,该文件位于:https://github.com/elastic/stack-docker
一切似乎都设置正确,我可以在localhost:5601上连接到kibana,但是我的浏览器或应用程序都不能分别连接到9200和9300上的Elastic。
对github进行检查和运行的唯一修改是我在弹性定义中添加了9300。
您知道在docker-compose中运行时可以进行哪些更改以使我的应用程序/浏览器可以访问弹性吗?
答案 0 :(得分:1)
请添加以下docker compose
version: '2.2'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:6.4.2
container_name: elasticsearch
environment:
- cluster.name=elasticsearch
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- "discovery.zen.ping.unicast.hosts=elasticsearch"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- esdata1:/usr/share/elasticsearch/data
ports:
- 9200:9200
- 9300:9300
kibana:
image: docker.elastic.co/kibana/kibana:6.4.2
container_name: kibana
environment:
- SERVER_NAME=localhost
- ELASTICSEARCH_URL=http://elasticsearch:9200
- XPACK.MONITORING.COLLECTION.ENABLED=true
ports:
- 5601:5601
volumes:
esdata1:
driver: local
运行后,kibana网址将位于 http://localhost:5601
和elasticsearch网址 http://localhost:9200/