java基础docker镜像精简

制作jre基础镜像

alpine简介

由于项目基于spring boot需要jre环境支撑,出于镜像大小考虑,若采用unbuntu或者centos作为基础镜像,会很大,在需要传输的场景中非常的不方便。

所以这里采用alpine作为基础镜像,alpine是一个轻量级的linux系统,镜像大小5M左右。
image

下载jre制作java项目运行环境

jdk大小200M左右

jdk大小70M+

#由于仅需要Java运行时,没有编译等需求,故这里选择体积较小的jre
image
由于是源码,需要解压、配置环境变量,但当我们解压后发现,解压后的包大约200+M,之前的努力全白费了感觉!!!

没关系我们删除一些不需要的内容,将下载后的jre上传至/root下,执行以下命令

mkdir -p /docker/jre
mv jre-8u171-linux-x64.tar.gz /docker/jre
cd /docker/jre
tar zxvf jre-8u171-linux-x64.tar.gz
mv jre1.8.0_171 jre
cd jre/

rm -rf ./lib/plugin.jar \
./lib/ext/jfxrt.jar \
./bin/javaws \
./lib/javaws.jar \
./lib/desktop \
./plugin \
./lib/deploy* \
./lib/*javafx* \
./lib/*jfx* \
./lib/amd64/libdecora_sse.so \
./lib/amd64/libprism_*.so \
./lib/amd64/libfxplugins.so \
./lib/amd64/libglass.so \
./lib/amd64/libgstreamer-lite.so \
./lib/amd64/libjavafx*.so \
./lib/amd64/libjfx*.so

#查看大小,107M
du -h /docker/jre

制作docker镜像

cd /docker/jre
cat >> Dockerfile <<EOF
FROM docker.io/jeanblanchard/alpine-glibc
ADD jre /usr/local/
ENV JAVA_HOME /usr/local/jre
ENV PATH ${PATH}:${JAVA_HOME}/bin
CMD ["java", "-version"]
EOF

#build

docker build -t cloud/jre:v1 .

#查看镜像,123M
docker images
image
#启动测试
docker run cloud/jre:v1
image
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 漆黑的夜总是那么一望无际 仰望着星空 一道流星划过 那又是谁把誓言许给了谁
    Sty兮城阅读 386评论 2赞 2
  • 后天沉默的我,很反感长舌妇类型的女人 我们班刚好就有这样几个人,扎堆聊天:“你看那个女孩,身高偏低,以后男朋友都难...
    旧城无七阅读 651评论 1赞 0
  • 从明天起,做一个幸福的人 喂马,劈柴,周游世界 从明天起,关心粮食和蔬菜 我有一所房子,面朝大海,春暖花开 从明天...
    一懵一醒阅读 187评论 1赞 0
  • 装修风格简洁的11栋报告厅。 诺大的投影器。 报告厅里的清一色穿着正装的人。 距离换届已经过去了快半个月,换届后的...
    东奇阅读 482评论 2赞 0

友情链接更多精彩内容