we just tried to upgrade our self-hosted speckle server from V 2.23.5 to V 2.25.4, but get “valkey unhealthy” messages on starting with docker-compose and speckle stays unusable.
When reverting the valkey-entries in docker-compose.yml to redis, the server starts correctly.
Where to start debugging?
What can be done to resolve this issue?
If you’ve previously had Redis running, ensure there are no port or volume conflicts.
The Valkey container might be marked “unhealthy” if it’s not binding correctly or has resource issues. You can inspect logs with:
docker compose logs valkey
If you can share your docker-compose.yml (or at least the valkey service section), we can take a look at your config.
Let us know what the logs say!
You’ve already identified that reverting to Redis works, and that’s fine in the short term. However, in the longer term, we recommend updating your setup to work with Valkey, as Redis support may be deprecated in future versions.
To add to Jonathon’s response, Valkey is intended to be compatible with Redis so you can continue using Redis for the meantime.
The root cause is probably that the volume used by Redis is incompatible with Valkey.
If you wish to swap Redis for Valkey, then try stopping the Redis container, deleting the Redis volume, then starting Valkey. This should be achievable by approximately following the below steps. As always, we recommend that you back up Postgres database before upgrading or undertaking maintenance on your server.
List the containers, and find the name of the Redis container:
Redis is used as an ephemeral store. Any data temporarily stored in it will be recreated after the Speckle server restarts.
Speckle server does not have a maintenance mode state. If you wished, you could change the DNS or ingress configuration to point to a holding page or redirect while maintenance is ongoing.