Comme docker n'est pas un système d'exploitation, il n'y a pas de JDK pour docker.
Si je comprends bien votre question, c'est qu'un JDK complet est trop volumineux pour vos souhaits, dans ce cas, vous pouvez essayer de passer uniquement au JRE et inclure uniquement les bibliothèques nécessaires.
JDK est l'acronyme de Java Development Kit, JRE est celui de Java Runtime Engine. Par «paresse» en raison de la complexité de répertorier toutes les dépendances nécessaires, personne ne se limite aux bibliothèques nécessaires, mais c'est la voie à suivre si vous souhaitez réduire la taille installée au strict minimum.
Une manière plus utilisable pourrait être de supprimer certaines des choses installées qui prennent beaucoup de place:
/usr/lib/jvm/jdk1.8.0_101$ du -hs *
776K    bin
4.0K    COPYRIGHT
5.7M    db
208K    include
4.9M    javafx-src.zip
187M    jre
133M    lib
4.0K    LICENSE
2.0M    man
4.0K    README.html
4.0K    release
21M     src.zip
108K    THIRDPARTYLICENSEREADME-JAVAFX.txt
176K    THIRDPARTYLICENSEREADME.txt
Il y a deux * src.zip qui peuvent être supprimés, ils ne seront pas utiles, et comme vous pouvez le voir, le répertoire lib fait la moitié de la taille et vous y trouverez un tas de choses dont vous n'avez pas vraiment besoin:
/usr/lib/jvm/jdk1.8.0_101$ du -hs lib/*
120K    lib/amd64
1.2M    lib/ant-javafx.jar
18M     lib/ct.sym
160K    lib/dt.jar
20K     lib/ir.idl
36K     lib/javafx-mx.jar
400K    lib/jconsole.jar
12K     lib/jexec
60M     lib/missioncontrol
4.0K    lib/orb.idl
8.0K    lib/packager.jar
2.4M    lib/sa-jdi.jar
18M     lib/tools.jar
34M     lib/visualvm
Vous pouvez sans problème supprimer missoncontrol sur un serveur, je suppose que vous pouvez également vous débarrasser de visualvm, vous devrez vérifier si vous avez besoin de quelque chose dans ce répertoire lib, mais je ne peux pas le dire sans connaître votre application ..
Une chose que vous devez faire dans votre dockerfile lors de l'installation d'Oracle JDK est de supprimer le .tar.gzfichier téléchargé qui a à peu près la même taille que le répertoire résultant car les .jarfichiers sont déjà compressés, le tar.gz est juste là pour les "empaqueter".
Vous devez faire tout cela dans la même RUNcommande, en enchaînant avec &&pour éviter d'ajouter des couches où vous ne supprimerez pas la taille en supprimant les fichiers de la couche précédente.