如何使 graylog 4 和 elasticsearch 7 与 docker compose 一起工作
How to make graylog 4 and elasticticsearch 7 working with docker compose
我正在尝试使用 elasticsearch 7
和 mongo 4
使用 docker-compose
进行 graylog 4
的本地设置。我正在研究 mac。
这是我的 docker-compose.yml
:https://gist.github.com/gandra/dc649b37e165d8e3fc5b20c30a8b5a79
运行之后:
docker-compose up -d --build
我在 http://localhost:9000/ 上看不到任何数据
当打开 url 我看到:
localhost didn’t send any data.
ERR_EMPTY_RESPONSE
知道如何让它工作吗?
Graylog 不支持 Elasticsearch 7.11 或更高版本,因此您需要将 Elasticsearch 版本更改为 7.10.2。除此之外,您在 Graylog 中看到了什么 server.log?
这是我在我的项目中使用的配置(撰写 v3)。
###################################
# Greylog container logging start #
###################################
# Taken from https://docs.graylog.org/en/4.0/pages/installation/docker.html
# MongoDB: https://hub.docker.com/_/mongo/
mongo:
image: mongo:4.2
# Elasticsearch: https://www.elastic.co/guide/en/elasticsearch/reference/7.10/docker.html
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch-oss:7.10.2
environment:
- http.host=0.0.0.0
- transport.host=localhost
- network.host=0.0.0.0
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
deploy:
resources:
limits:
memory: 1g
# Graylog: https://hub.docker.com/r/graylog/graylog/
graylog:
image: graylog/graylog:4.0
environment:
# CHANGE ME (must be at least 16 characters)!
- GRAYLOG_PASSWORD_SECRET=somepasswordpepper
# Password: admin
- GRAYLOG_ROOT_PASSWORD_SHA2=8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918
- GRAYLOG_HTTP_EXTERNAL_URI=http://127.0.0.1:9000/
entrypoint: /usr/bin/tini -- wait-for-it elasticsearch:9200 -- /docker-entrypoint.sh
restart: always
depends_on:
- mongo
- elasticsearch
ports:
# Graylog web interface and REST API
- 9000:9000
# Syslog TCP
- 1514:1514
# Syslog UDP
- 1514:1514/udp
# GELF TCP
- 12201:12201
# GELF UDP
- 12201:12201/udp
###################################
# Greylog container logging end #
###################################
我会说,这花了相当多的时间才开始。在 Graylog、MongoDB 和 Elastisearch 进行设置工作时,输出日志 运行。不过,最后,它最终变得可用(大约花了整整两分钟)。不过,在准备就绪之前,我看到了与您相同的回复。
我正在尝试使用 elasticsearch 7
和 mongo 4
使用 docker-compose
进行 graylog 4
的本地设置。我正在研究 mac。
这是我的 docker-compose.yml
:https://gist.github.com/gandra/dc649b37e165d8e3fc5b20c30a8b5a79
运行之后:
docker-compose up -d --build
我在 http://localhost:9000/ 上看不到任何数据 当打开 url 我看到:
localhost didn’t send any data.
ERR_EMPTY_RESPONSE
知道如何让它工作吗?
Graylog 不支持 Elasticsearch 7.11 或更高版本,因此您需要将 Elasticsearch 版本更改为 7.10.2。除此之外,您在 Graylog 中看到了什么 server.log?
这是我在我的项目中使用的配置(撰写 v3)。
###################################
# Greylog container logging start #
###################################
# Taken from https://docs.graylog.org/en/4.0/pages/installation/docker.html
# MongoDB: https://hub.docker.com/_/mongo/
mongo:
image: mongo:4.2
# Elasticsearch: https://www.elastic.co/guide/en/elasticsearch/reference/7.10/docker.html
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch-oss:7.10.2
environment:
- http.host=0.0.0.0
- transport.host=localhost
- network.host=0.0.0.0
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
ulimits:
memlock:
soft: -1
hard: -1
deploy:
resources:
limits:
memory: 1g
# Graylog: https://hub.docker.com/r/graylog/graylog/
graylog:
image: graylog/graylog:4.0
environment:
# CHANGE ME (must be at least 16 characters)!
- GRAYLOG_PASSWORD_SECRET=somepasswordpepper
# Password: admin
- GRAYLOG_ROOT_PASSWORD_SHA2=8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918
- GRAYLOG_HTTP_EXTERNAL_URI=http://127.0.0.1:9000/
entrypoint: /usr/bin/tini -- wait-for-it elasticsearch:9200 -- /docker-entrypoint.sh
restart: always
depends_on:
- mongo
- elasticsearch
ports:
# Graylog web interface and REST API
- 9000:9000
# Syslog TCP
- 1514:1514
# Syslog UDP
- 1514:1514/udp
# GELF TCP
- 12201:12201
# GELF UDP
- 12201:12201/udp
###################################
# Greylog container logging end #
###################################
我会说,这花了相当多的时间才开始。在 Graylog、MongoDB 和 Elastisearch 进行设置工作时,输出日志 运行。不过,最后,它最终变得可用(大约花了整整两分钟)。不过,在准备就绪之前,我看到了与您相同的回复。