本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
转载自夜明的孤行灯
今天突然收到阿里云的短信,提示硬盘使用率超标,感觉特别奇怪。
因为机器上只有两个数据库和一点应用,所有的资源啥的都放在七牛上的,不应该硬盘不够用才对。
仔细看了一下发现是docker把空间吃了,速度把一些没用的image等等清理一番,硬盘使用率瞬间降到53%。
机器上所有应用都是spring boot的,也就是java8环境的,之前使用的Docker Image基于ubuntu构建,大小500M+以上,突然想起之前听闻过Alpine Linux,小巧方便,说不定可以减少镜像大小。
在网上找了一个找了一个基础镜像
frolvlad/alpine-oraclejdk8:slim
Dockerfile改造为
FROM frolvlad/alpine-oraclejdk8:slim VOLUME /tmp ADD spring-boot-application.jar app.jar ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
如果需要在镜像中构建,编译的话可能还需要bash支持
FROM frolvlad/alpine-oraclejdk8:slim VOLUME /tmp RUN apk add bash RUN ./gradlew build -x test ADD spring-boot-application.jar app.jar RUN apk del bash RUN rm -rf /root/.gradle/ ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
镜像大小可以节约200M+。
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
转载自夜明的孤行灯