I note the minimum version of Redis is specified at 6.0, but Sidekq only requires Redis v4.0+. https://github.com/discourse/discourse/blob/master/docs/INSTALL.md
I wish to use Google Cloud Redis, but it only supports v5.
What is the reason for Discourse requiring Redis v6?
That is the version we test and use in production in our hosting.
You may do your own due diligence and evaluate if it works with a previous version, but we don’t promise it will keep working with anything older than the version we recommend.
We use Redis for a lot more than Sidekiq.
That all said, the Redis feature set is pretty stable so it will probably work just okay today. But then you are on the hook testing upgrades carefully.
That sounds fair. An upgrade could use a new feature at any time.
What else does Discourse use Redis for? Or where in the code should I look?
Quite a lot actually.
We use Redis backend in the https://github.com/discourse/message_bus gem for live page updates, for the Rails cache, for the distributed rate limit, for our semaphore system, etc.
I’m running a deployment on GCP kubernetes, for just a bit longer. If I weren’t planning to move it to aws (it’s what the client wanted for an unrelated reason) I would probably switch to running my own redis and not use the Google one.