I can't start Graylog container after trying to update to 4.2.1

I had an older version of Graylog (2.4.6) that was running on Docker. It was working fine I installed for learning purposes, connected one server and PC with nxlog. Today I tried to upgrade to 4.2.1 version and after that i couldn’t start the Graylog container. The Mongo and ElastcSearch containers were fine. After that I decided to delete everything on the Docker and started installation from scratch just like in Graylog docs. Everything went fine but I still can’t start Graylog container with the same error/log. The log from the container:

2021-11-25 17:21:57,465 INFO : org.graylog2.featureflag.ImmutableFeatureFlagsCollector - Following feature flags are used: {}
2021-11-25 17:21:57,650 ERROR: org.graylog2.bootstrap.CmdLineTool - Invalid configuration
com.github.joschi.jadconfig.ValidationException: Parameter password_secret should not be blank
at com.github.joschi.jadconfig.validators.StringNotBlankValidator.validate(StringNotBlankValidator.java:25) ~[graylog.jar:?]
at com.github.joschi.jadconfig.validators.StringNotBlankValidator.validate(StringNotBlankValidator.java:11) ~[graylog.jar:?]
at com.github.joschi.jadconfig.JadConfig.validateParameter(JadConfig.java:215) ~[graylog.jar:?]
at com.github.joschi.jadconfig.JadConfig.processClassFields(JadConfig.java:148) ~[graylog.jar:?]
at com.github.joschi.jadconfig.JadConfig.process(JadConfig.java:99) ~[graylog.jar:?]
at org.graylog2.bootstrap.CmdLineTool.processConfiguration(CmdLineTool.java:448) [graylog.jar:?]
at org.graylog2.bootstrap.CmdLineTool.run(CmdLineTool.java:256) [graylog.jar:?]
at org.graylog2.bootstrap.Main.main(Main.java:45) [graylog.jar:?]

I am guessing the fault is in some configuration somewhere, but I can’t find it myself.
I am new to Graylog and Docker so please if you could explain in a noob language.
Thank you!

Hello && Welcome

At the beginning of the log file I noticed the above statement. I’m assuming there should be some configurations made or need some reconfiguration done.

So it looks like you didn’t configure you Graylog server.conf file. Probably go back and adjust that. You may have more that needs to be configured.

With the amount of information giving, that is about all the suggestions I can give you. For a better understand what the community will need to help you further, please talk a look at this post for a better understanding.

Thank you

EDIT: to be honest I know a little about Docker but I came across this video which may help

Hey gsmith, thanks for the replay!
The problem was in this line: ValidationException: Parameter password_secret should not be blank

I removed the old Graylog container and run another with environment parameters GRAYLOG_PASSWORD_SECRET and GRAYLOG_ROOT_PASSWORD_SHA2 and the graylog container started as supposed.

I always make mistakes like this, in order to try Graylog log server and see how it works, I didn’t wanted to install some VM and Linux on it and Graylog on that Linux Distro I decided to run it on Docker even I never worked with it. So ended up buying Docker lessons on Udemy and learned the basics how to handle containers :grinning_face_with_smiling_eyes:
Because Elascticserach and Mongo containers were fine i just run the Graylog container and linked the two other:

docker run --name graylog --link mongo --link elasticsearch -p 9000:9000 -p 12201:12201 -p 1514:1514 -e GRAYLOG_PASSWORD_SECRET=[some_password_here_more_than_16_chars] -e GRAYLOG_ROOT_PASSWORD_SHA2=[some_SHA_string_here] -e GRAYLOG_HTTP_EXTERNAL_URI="http://127.0.0.1:9000/" -d graylog/graylog:4.2

I don’t know why this two env parameters were not needed in the two earlier deployments but the important thing is that now graylog works :slight_smile:

Nice, glad I was able to give some direction. If this post is resolved please mark it for future search’s.

–Thanks

1 Like