1. Describe your incident:
Docker project builds correctly but graylog container continually restarts.
Immediately below are the graylog container logs:
10/4/2025 12:27 stderr wait-for-it: waiting 15 seconds for opensearch:9200
10/4/2025 12:26 stdout " at org.graylog2.bootstrap.Main.main(Main.java:57) [graylog.jar:?]"
10/4/2025 12:26 stdout " at org.graylog2.bootstrap.CmdLineTool.run(CmdLineTool.java:287) [graylog.jar:?]"
10/4/2025 12:26 stdout " at org.graylog2.bootstrap.CmdLineTool.doRun(CmdLineTool.java:296) [graylog.jar:?]"
10/4/2025 12:26 stdout " at org.graylog2.bootstrap.CmdLineTool.parseAndGetNativeLibPathConfiguration(CmdLineTool.java:409) [graylog.jar:?]"
10/4/2025 12:26 stdout " at org.graylog2.bootstrap.CmdLineTool.processConfiguration(CmdLineTool.java:568) [graylog.jar:?]"
10/4/2025 12:26 stdout " at com.github.joschi.jadconfig.JadConfig.process(JadConfig.java:103) ~[graylog.jar:?]"
10/4/2025 12:26 stdout " at com.github.joschi.jadconfig.JadConfig.processClassFields(JadConfig.java:143) ~[graylog.jar:?]"
10/4/2025 12:26 stdout " at com.github.joschi.jadconfig.JadConfig.processClassField(JadConfig.java:173) ~[graylog.jar:?]"
10/4/2025 12:26 stdout com.github.joschi.jadconfig.ParameterException: Required parameter “data_dir” not found.
10/4/2025 12:26 stdout 12:26:52.937 [main] ERROR org.graylog2.bootstrap.CmdLineTool - Invalid configuration
10/4/2025 12:26 stdout 12:26:52.908 [main] INFO com.github.joschi.jadconfig.JadConfig - Added converter factory com.github.joschi.jadconfig.jodatime.JodaTimeConverterFactory@41e68d87
10/4/2025 12:26 stdout 12:26:52.906 [main] INFO com.github.joschi.jadconfig.JadConfig - Added converter factory com.github.joschi.jadconfig.guava.GuavaConverterFactory@4c1f22f3
10/4/2025 12:26 stdout 2025-10-04T19:26:52.737463830Z main ERROR Reconfiguration failed: No configuration found for ‘5935be3d’ at ‘null’ in ‘null’
10/4/2025 12:26 stderr wait-for-it: timeout occurred after waiting 15 seconds for opensearch:9200
10/4/2025 12:26 stderr wait-for-it: waiting 15 seconds for opensearch:9200
10/4/2025 12:26 stdout " at org.graylog2.bootstrap.Main.main(Main.java:57) [graylog.jar:?]"
10/4/2025 12:26 stdout " at org.graylog2.bootstrap.CmdLineTool.run(CmdLineTool.java:287) [graylog.jar:?]"
10/4/2025 12:26 stdout " at org.graylog2.bootstrap.CmdLineTool.doRun(CmdLineTool.java:296) [graylog.jar:?]"
10/4/2025 12:26 stdout " at org.graylog2.bootstrap.CmdLineTool.parseAndGetNativeLibPathConfiguration(CmdLineTool.java:409) [graylog.jar:?]"
10/4/2025 12:26 stdout " at org.graylog2.bootstrap.CmdLineTool.processConfiguration(CmdLineTool.java:568) [graylog.jar:?]"
10/4/2025 12:26 stdout " at com.github.joschi.jadconfig.JadConfig.process(JadConfig.java:103) ~[graylog.jar:?]"
10/4/2025 12:26 stdout " at com.github.joschi.jadconfig.JadConfig.processClassFields(JadConfig.java:143) ~[graylog.jar:?]"
10/4/2025 12:26 stdout " at com.github.joschi.jadconfig.JadConfig.processClassField(JadConfig.java:173) ~[graylog.jar:?]"
10/4/2025 12:26 stdout com.github.joschi.jadconfig.ParameterException: Required parameter “data_dir” not found.
10/4/2025 12:26 stdout 12:26:25.086 [main] ERROR org.graylog2.bootstrap.CmdLineTool - Invalid configuration
10/4/2025 12:26 stdout 12:26:25.052 [main] INFO com.github.joschi.jadconfig.JadConfig - Added converter factory com.github.joschi.jadconfig.jodatime.JodaTimeConverterFactory@41e68d87
10/4/2025 12:26 stdout 12:26:25.050 [main] INFO com.github.joschi.jadconfig.JadConfig - Added converter factory com.github.joschi.jadconfig.guava.GuavaConverterFactory@4c1f22f3
10/4/2025 12:26 stdout 2025-10-04T19:26:24.807021768Z main ERROR Reconfiguration failed: No configuration found for ‘5935be3d’ at ‘null’ in ‘null’
10/4/2025 12:26 stderr wait-for-it: timeout occurred after waiting 15 seconds for opensearch:9200
10/4/2025 12:26 stderr wait-for-it: waiting 15 seconds for opensearch:9200
2. Describe your environment:
-
OS Information: Synology DSM 7.2
-
Package Version: graylog 6.3
-
Service logs, configurations, and environment variables:
version: '3'
networks:
graynet:
driver: bridge
services:
# Graylog stores configuration in MongoDB
mongo:
image: mongo:7.0
container_name: mongodb
volumes:
- "/volume1/docker/graylog/mongodb/data/db:/data/db"
- "/volume1/docker/graylog/mongodb/data/configdb:/data/configdb"
networks:
- graynet
restart: unless-stopped
# The logs themselves are stored in Opensearch
opensearch:
image: opensearchproject/opensearch:2
container_name: opensearch
environment:
- "OPENSEARCH_JAVA_OPTS=-Xms1g -Xmx1g"
- "bootstrap.memory_lock=true"
- "discovery.type=single-node"
- "action.auto_create_index=false"
- "plugins.security.ssl.http.enabled=false"
- "plugins.security.disabled=true"
- "OPENSEARCH_INITIAL_ADMIN_PASSWORD=${OPENSEARCH_INITIAL_ADMIN_PASSWORD}"
volumes:
- "/volume1/docker/graylog/opensearch/data:/usr/share/opensearch/data"
ulimits:
memlock:
soft: -1
hard: -1
nofile:
soft: 65536
hard: 65536
ports:
- 9200:9200/tcp
networks:
- graynet
restart: unless-stopped
graylog:
image: graylog/graylog:6.3
container_name: graylog
environment:
# CHANGE ME (must be at least 16 characters)!
GRAYLOG_PASSWORD_SECRET: "${GRAYLOG_PASSWORD_SECRET}"
# Password: admin
GRAYLOG_ROOT_PASSWORD_SHA2: "${GRAYLOG_ROOT_PASSWORD_SHA2}"
GRAYLOG_HTTP_BIND_ADDRESS: "0.0.0.0:9100"
GRAYLOG_HTTP_EXTERNAL_URI: "http://localhost:9100/"
GRAYLOG_ELASTICSEARCH_HOSTS: "http://opensearch:9200"
GRAYLOG_MONGODB_URI: "mongodb://mongodb:27017/graylog"
GRAYLOG_TIMEZONE: "America/Los_Angeles"
TZ: "America/Los_Angeles"
GRAYLOG_TRANSPORT_EMAIL_PROTOCOL: "smtp"
GRAYLOG_TRANSPORT_EMAIL_WEB_INTERFACE_URL: "http://192.168.0.10:9100/"
GRAYLOG_TRANSPORT_EMAIL_HOSTNAME: "smtp.server.net"
GRAYLOG_TRANSPORT_EMAIL_ENABLED: "true"
GRAYLOG_TRANSPORT_EMAIL_PORT: "587"
GRAYLOG_TRANSPORT_EMAIL_USE_AUTH: "true"
GRAYLOG_TRANSPORT_EMAIL_AUTH_USERNAME: "null@null.net"
GRAYLOG_TRANSPORT_EMAIL_AUTH_PASSWORD: "null"
GRAYLOG_TRANSPORT_EMAIL_USE_TLS: "true"
GRAYLOG_TRANSPORT_EMAIL_USE_SSL: "false"
GRAYLOG_TRANSPORT_FROM_EMAIL: "null@null.net"
GRAYLOG_TRANSPORT_SUBJECT_PREFIX: "[graylog]"
entrypoint: /usr/bin/tini -- wait-for-it opensearch:9200 -- /docker-entrypoint.sh
volumes:
#- "/volume1/docker/graylog/graylog.conf:/usr/share/graylog/config/graylog.conf"
- "/volume1/docker/graylog/data:/usr/share/graylog/data"
networks:
- graynet
restart: unless-stopped
depends_on:
opensearch:
condition: "service_started"
mongo:
condition: "service_started"
ports:
- 9100:9100/tcp # Graylog web interface and REST API
- 1514:1514/tcp # Syslog
- 1514:1514/udp # Syslog
#- 1516:1516/udp # TrueNAS per https://youtu.be/DwYwrADwCmg?si=OyjAG8lLIFaorMag&t=510
- 12201:12201/tcp # GELF
- 12201:12201/udp # GELF
3. What steps have you already taken to try and solve the problem?
To the best of my knowledge, I have created all of the required folders in graylog/data and also the graylog.conf file.
4. How can the community help?
I need help interpreting the graylog container logs.