Graylog service stuck at accepted stage with the new arm64 image

Description of your problem

I have created a compose file for a stack (currently for a single node).

version: "3.9"
services:

       mongodb:
          image: mongo:latest
          volumes:
            - mongo_data:/data/db
          environment:
            - MONGO_INITDB_ROOT_USERNAME=*********
            - MONGO_INITDB_ROOT_PASSWORD=*********
            - MONGO_INITDB_DATABASE=graylog.logs
          ports:
            - "27017:27017"
          deploy:
           replicas: 1
           restart_policy:
                condition: on-failure
          networks:
            - graylog
       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=-Xms64m -Xmx64m"
          volumes:
            - es_data:/usr/share/elasticsearch/data
          ulimits:
           nofile:
                soft: 65536
                hard: 65536
          deploy:
           replicas: 1
           restart_policy:
                condition: on-failure
          ports:
            - "9200:9200"
          networks:
            - graylog
graylog:
          image: graylog/graylog:4.1-arm64
          volumes:
            - graylog_data:/usr/share/graylog/data
            - /etc/graylog/server:/etc/graylog/server
          environment:
            - GRAYLOG_PASSWORD_SECRET=****************
            - GRAYLOG_ROOT_PASSWORD_SHA2=**********
            - GRAYLOG_ROOT_USERNAME=*********
            - GRAYLOG_HTTP_EXTERNAL_URI=http://127.0.0.1:9000/
            - GRAYLOG_MONGODB_URI=mongodb+srv://*******:*******@cluster0.ffzty.mongodb.net/test
            - GRAYLOG_MONGODB_MAX_CONNECTIONS=1000
            - GRAYLOG_ELASTICSEARCH_VERSION=7
          entrypoint: /usr/bin/tini -- wait-for-it elasticsearch:9200 --  /docker-entrypoint.sh
          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
          networks:
            - graylog
networks:
  graylog:
volumes:
  mongo_data:
    driver: local
  es_data:
    driver: local
  graylog_data:
    driver: local

After deploying the stack the graylog service is stuck at accepted state. Tried a lot of work around but nothing seems to work.

Description of steps you’ve taken to attempt to solve the issue

Nothing appears in logs too. The process always shows accepted state for graylog service. The elastic search and mongodb are up.

Operating system information

I am using it for arm64.

Package versions

Graylog image - graylog/graylog:4.1-arm64
Elasticsearch image - docker.elastic.co/elasticsearch/elasticsearch-oss:7.10.2

Hi, Kunal.

Is this using Docker Swarm? I wonder if the node you’re pushing it to has enough RAM and CPU to run the container. This sounds like it might be a configuration issue.

Hey Donald,

Yeah, It is part of the swarm. Yesterday I have cleaned some memory from the virtual machine. I am now seeing this error.


I tried to bind mount the GeoLite2-City.mmdb from the virtual machine, as you can see in the volumes /etc/graylog/server:/etc/graylog/server. Without this mount it was throwing the error about the geoIP database file not exist at /etc/graylog/server/GeoLite2-City.mmdb.
What am I doing wrong?