apiman-docker icon indicating copy to clipboard operation
apiman-docker copied to clipboard

Unify Base Images

Open volkflo opened this issue 4 years ago • 5 comments

We should decide on a base JDK for builds and a small and light JRE image for runtime.

volkflo avatar Jul 30 '21 09:07 volkflo

Basically any version of Java will work fine. However, my preferences are:

  • Use the same version Java to make our lives easier (latest TLS?).
  • Use a distro that has Shenandoah GC. If you don't use it, then it has no negative impact, but it has plenty of good use-cases for the gateway (low latency for anyone doing stuff with large heap or lots of GC). AdoptOpenJDK and Adoptium I think should be fine.
  • Java 17 LTS will be out soon, so could go for that? Should release next month.
  • Probably use a slim image? e.g. Centos slim or similar?

msavy avatar Aug 05 '21 14:08 msavy

Yes, I would go with the LTS version of java. For the migration-assistant and the new gateway image, I used the slim JRE images from adoptopenjdk (java 11). Wildfy and Tomcat are official images.

volkflo avatar Aug 06 '21 13:08 volkflo

I'm personally happy to go with Adopt for all our images because they are backed by Red Hat, IBM, TomiTribe Microsoft, Alibaba, etc.

One other thought I had last night was that we could consider compiling our CLI tools with GraalVM or similar to really squash them down in size to a couple of MB.

msavy avatar Aug 06 '21 13:08 msavy

I would wait till Adoptium releases docker build under the new name and then we could switch. But I would stay with the official wildfly/tomcat images for now or switch to bitnami for widfly/tomcat because they have good and secure written docker base images.

volkflo avatar Aug 09 '21 07:08 volkflo

We probably have to wait a while and follow the discussion if we do not want to build the jre ourselves https://github.com/adoptium/temurin-build/issues/2683

volkflo avatar Aug 24 '21 11:08 volkflo