Temporal IO Java Runtime Exception within Docker Container

Hi guys,

hope you can help me. I have the following basic setup:

  • Temporal IO: 1.11.0
  • Spring Boot: 2.6.7
  • Docker Base Image: eclipse-temurin:17-jre-alpine
  • Build tool: Gradle

Currently, when the application is build without docker everything started as expected. But when creating an image and starting it within a Docker Container there a is runtime exception.

After the line:
“[main] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit ‘default’”, we get the following output in the console:

This Exception happens when Spring Boot is creating the Beans for the WorkflowServiceStubs, the WorkflowClient and the WorkerFactory:

If I’m executing only the jar file it works as expected, the WorkflowServiceStubs could be created and a workflow could be started after the Spring Boot Server finished the setup:

“[main] INFO i.t.s.WorkflowServiceStubsImpl - Created WorkflowServiceStubs for channel: ManagedChannelOrphanWrapper{delegate=ManagedChannelImpl{logId=1, target=127.0.0.1:7233}}”

The behaviour is reproducible on different machines with different OS and CPU Architectures.

In order to solve the problem we have tried it with the openjdk:17-alpine base image and other suggestion from i.g. Stackoverflow. But we have still the same issue. Now our troubleshooting is stuck. So, do you have any ideas how we can solve it?

Best wishes
Maik

Hi @maikdrop

this is a known issue we reported here and opened issue with grpc-java here.
You can follow the different options mentioned in this latter issue, or switch from alpine to glibc linux distribution.

A user suggested a workaround which hopefully should work for you as well, give it a try if you cannot switch to glibc. Hope this helps.

1 Like

Awesome, thank you very much. We will investigate that. I’ll give you an update, if the issue could been solved or not.

Cheers, Maik