Dockerfile
FROM maven:3.5.0-jdk-8-alpine AS builder
ADD ./pom.xml pom.xml
ADD ./src src/
RUN mvn clean package
From openjdk:8-jre-alpine
COPY --from=builder target/web-site-1.0.jar web-site-1.0.jar
EXPOSE 8080
CMD [“java”, “-jar”, “-Xmx2048m”,"-Xms2048m", “web-site-1.0.jar”, “–server.port=8080”, “–use_proxy=false”]针对Java这类的编译型语言,使用Dockerfile多阶段构建,具有以下优势:保证构建镜像的安全性当您使用Dockerfile多阶段构建镜像时,需要在第一阶段选择合适的编译时基础镜像,进行代码拷贝、项目依赖下载、编译、测试、打包流程。在第二阶段选择合适的运行时基础镜像,拷贝基础阶段生成的运行时依赖文件。最终构建的镜像将不包含任何源代码信息。优化镜像的层数和体积构建的镜像仅包含基础镜像和编译制品,镜像层数少,镜像文件体积小。提升构建速度使用构建工具(Docker、Buildkit等),可以并发执行多个构建流程,缩短构建耗时。
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦