I guess that the distroless image you were using is based on a Debian or Ubuntu distro thus leading to Java runtime compiled against glibc and not musl lib c (the one used by alpine). This can explain the size difference and then the comparison is not totally a 1:1