GoogleContainerTools / distroless

🥑 Language focused docker images, minus the operating system.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

distroless/java17:debug lost OpenMP library

carl-mastrangelo opened this issue · comments

Describe the bug
Within the past 4 days, the docker push of gcr.io/distroless/java17:debug stopped including /usr/lib/x86_64-linux-gnu/libgomp.so.1. It would be nice if it could still be included, since some of our Servers depended on this (via another library XGBoost4J).

To Reproduce

docker run -it --entrypoint /busybox/sh  gcr.io/distroless/java17:debug@sha256:0691c2c3c6301f12e5f098012fe1bce6157b69769425c07b26b692e946acf960
ls /usr/lib/x86_64-linux-gnu/ | grep gomp
# expected some /usr/lib/x86_64-linux-gnu/libgomp.so.1 and /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0

Expected behavior
Expecting this library to still be present.

Additional context
Add any other context about the problem here.

I can't find the specific commit that caused this, and I am not sure how to see what were the previous sha256 tags for this image to see where it was lost.

This bug shows up as unable to load the XGBoost4J library in Java, which has a symlink dependency on the library. I am not sure how to manually add this library to the distroless images, which I would also be open to doing.

I can't find the specific commit that caused this, and I am not sure how to see what were the previous sha256 tags for this image to see where it was lost.

It's possible that the changes in #1397 caused gomp as an indirect dependency to be removed from the java image image.

I am not sure how to manually add this library to the distroless images, which I would also be open to doing.

There isn't a specific guide in the distroless project (may be nice to have an example workaround) but I wrote up a bit about how to add custom additional dependencies from debian here.