Upgrade from 15 to 16 in Docker

We use keycloak in a standalone manner deployed via docker-compose behind a nginx/LE reverse-proxy. This has been fine until the release of version 16. Typically, all we have to do is change the docker image tag version in the docker-compose.yml file and the upgrade goes fine. This was not the case for version 16. I understand theree may be some steps we need to take for the Wildfly upgrade, but I am not sure what those are within the parameters of docker.

Here are the logs I get when all I do i move from 15 to 16 in the docker-compose file


18:06:19,040 ERROR [org.infinispan.CLUSTER] (thread-8,ejb,3ac7c8973a34) ISPN000474: Error processing request 0@219bb8f89583: java.lang.ClassCastException: class [I cannot be cast to class java.util.Map ([I and java.util.Map are in module java.base of loader 'bootstrap')
        at org.infinispan@12.1.7.Final//org.infinispan.distribution.ch.impl.ReplicatedConsistentHash$Externalizer.doReadObject(ReplicatedConsistentHash.java:415)
        at org.infinispan@12.1.7.Final//org.infinispan.distribution.ch.impl.ReplicatedConsistentHash$Externalizer.doReadObject(ReplicatedConsistentHash.java:400)
        at org.infinispan.commons@12.1.7.Final//org.infinispan.commons.marshall.InstanceReusingAdvancedExternalizer.readObject(InstanceReusingAdvancedExternalizer.java:102)
        at org.infinispan@12.1.7.Final//org.infinispan.marshall.core.GlobalMarshaller.readWithExternalizer(GlobalMarshaller.java:727)
        at org.infinispan@12.1.7.Final//org.infinispan.marshall.core.GlobalMarshaller.readNonNullableObject(GlobalMarshaller.java:708)
        at org.infinispan@12.1.7.Final//org.infinispan.marshall.core.GlobalMarshaller.readNullableObject(GlobalMarshaller.java:357)
        at org.infinispan@12.1.7.Final//org.infinispan.marshall.core.BytesObjectInput.readObject(BytesObjectInput.java:32)
        at org.infinispan@12.1.7.Final//org.infinispan.commands.topology.RebalanceStartCommand.readFrom(RebalanceStartCommand.java:98)
        at org.infinispan@12.1.7.Final//org.infinispan.marshall.exts.ReplicableCommandExternalizer.readCommandParameters(ReplicableCommandExternalizer.java:117)
        at org.infinispan@12.1.7.Final//org.infinispan.marshall.exts.ReplicableCommandExternalizer.readObject(ReplicableCommandExternalizer.java:106)
        at org.infinispan@12.1.7.Final//org.infinispan.marshall.exts.ReplicableCommandExternalizer.readObject(ReplicableCommandExternalizer.java:68)
        at org.infinispan@12.1.7.Final//org.infinispan.marshall.core.GlobalMarshaller.readWithExternalizer(GlobalMarshaller.java:727)
        at org.infinispan@12.1.7.Final//org.infinispan.marshall.core.GlobalMarshaller.readNonNullableObject(GlobalMarshaller.java:708)
        at org.infinispan@12.1.7.Final//org.infinispan.marshall.core.GlobalMarshaller.readNullableObject(GlobalMarshaller.java:357)
        at org.infinispan@12.1.7.Final//org.infinispan.marshall.core.GlobalMarshaller.objectFromObjectInput(GlobalMarshaller.java:191)
        at org.infinispan@12.1.7.Final//org.infinispan.marshall.core.GlobalMarshaller.objectFromByteBuffer(GlobalMarshaller.java:220)
        at org.infinispan@12.1.7.Final//org.infinispan.remoting.transport.jgroups.JGroupsTransport.processRequest(JGroupsTransport.java:1374)
        at org.infinispan@12.1.7.Final//org.infinispan.remoting.transport.jgroups.JGroupsTransport.processMessage(JGroupsTransport.java:1314)
        at org.infinispan@12.1.7.Final//org.infinispan.remoting.transport.jgroups.JGroupsTransport.access$300(JGroupsTransport.java:133)
        at org.infinispan@12.1.7.Final//org.infinispan.remoting.transport.jgroups.JGroupsTransport$ChannelCallbacks.up(JGroupsTransport.java:1458)
        at org.jgroups@4.2.15.Final//org.jgroups.JChannel.up(JChannel.java:784)
        at org.jgroups@4.2.15.Final//org.jgroups.fork.ForkProtocolStack.up(ForkProtocolStack.java:135)
        at org.jgroups@4.2.15.Final//org.jgroups.stack.Protocol.up(Protocol.java:309)
        at org.jgroups@4.2.15.Final//org.jgroups.protocols.FORK.up(FORK.java:142)
        at org.jgroups@4.2.15.Final//org.jgroups.protocols.FRAG3.up(FRAG3.java:165)
        at org.jgroups@4.2.15.Final//org.jgroups.protocols.FlowControl.up(FlowControl.java:363)
        at org.jgroups@4.2.15.Final//org.jgroups.protocols.FlowControl.up(FlowControl.java:355)
        at org.jgroups@4.2.15.Final//org.jgroups.protocols.pbcast.GMS.up(GMS.java:876)
        at org.jgroups@4.2.15.Final//org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:254)
        at org.jgroups@4.2.15.Final//org.jgroups.protocols.UNICAST3.up(UNICAST3.java:392)
        at org.jgroups@4.2.15.Final//org.jgroups.protocols.pbcast.NAKACK2.deliver(NAKACK2.java:926)
        at org.jgroups@4.2.15.Final//org.jgroups.protocols.pbcast.NAKACK2.handleMessage(NAKACK2.java:818)
        at org.jgroups@4.2.15.Final//org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.java:602)
        at org.jgroups@4.2.15.Final//org.jgroups.protocols.VERIFY_SUSPECT.up(VERIFY_SUSPECT.java:132)
        at org.jgroups@4.2.15.Final//org.jgroups.protocols.FailureDetection.up(FailureDetection.java:186)
        at org.jgroups@4.2.15.Final//org.jgroups.protocols.FD_SOCK.up(FD_SOCK.java:254)
        at org.jgroups@4.2.15.Final//org.jgroups.protocols.MERGE3.up(MERGE3.java:281)
        at org.jgroups@4.2.15.Final//org.jgroups.protocols.Discovery.up(Discovery.java:300)
        at org.jgroups@4.2.15.Final//org.jgroups.protocols.TP.passMessageUp(TP.java:1400)
        at org.jgroups@4.2.15.Final//org.jgroups.util.SubmitToThreadPool$SingleMessageHandler.run(SubmitToThreadPool.java:98)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at org.jboss.as.clustering.common@25.0.1.Final//org.jboss.as.clustering.context.ContextReferenceExecutor.execute(ContextReferenceExecutor.java:49)
        at org.jboss.as.clustering.common@25.0.1.Final//org.jboss.as.clustering.context.ContextualExecutor$1.run(ContextualExecutor.java:70)
        at java.base/java.lang.Thread.run(Thread.java:829)

I have reviewed this topic: Migration from docker 15 to 17.0.1 - #3 by stumkar

But I was unable to decide how best to apply the mentioned fix, or if it even applies to my use case.