如何使 graylog 4 和 elasticsearch 7 与 docker compose 一起工作

How to make graylog 4 and elasticticsearch 7 working with docker compose

我正在尝试使用 elasticsearch 7mongo 4 使用 docker-compose 进行 graylog 4 的本地设置。我正在研究 mac。 这是我的 docker-compose.ymlhttps://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 进行设置工作时,输出日志 运行。不过,最后,它最终变得可用(大约花了整整两分钟)。不过,在准备就绪之前,我看到了与您相同的回复。