可以看到它是基于openjdk这个基础镜像来创建的,先去下载maven的包,然后进行了安装 。然后又设置了MAVEN_HOME和MAVEN_CONFIG这两个环境变量,最后通过mvn-entrypoing.sh来进行了启动 。
前端服务的两阶段构建我有一个前端服务,目录结构如下:
$ ls frontend/myaccount/ resources/ third_party/
myaccount目录下是放置的js,vue等,resources放置的是css,images等 。third_party放的是第三方应用 。
这里采用了两阶段构建,即采用上一阶段的构建结果作为下一阶段的构建数据
FROM node:alpine as builderWORKDIR '/build'COPY myaccount ./myaccountCOPY resources ./resourcesCOPY third_party ./third_partyWORKDIR '/build/myaccount'RUN npm installRUN npm rebuild node-sassRUN npm run buildRUN ls /build/myaccount/distFROM NginxEXPOSE 80COPY --from=builder /build/myaccount/dist /usr/share/nginx/html
需要注意结尾的 --from=builder这里和开头是遥相呼应的 。
作者:think123
原文链接:https://juejin.im/post/5e60745d518825492e4965ed
推荐阅读
- 数据库连接池到底应该设多大?这篇文章可能会颠覆你的认知
- 多合一小程序:小程序如何解决“用完即走,再也不来”
- 网站域名解析教程
- 读完这篇文章,就基本搞定了Redis数据库
- 灵活就业人员如何领取社保补贴?看了这篇就明白
- 朝花夕拾读后感 朝花夕拾读后感600
- 羊角蜜和羊角脆怎么分辨?水果小贩教你几招,再也不怕买错了
- 谷歌|长时间不更新的APP被谷歌清理:用户再也搜不到了
- 我花了10个小时,写出了这篇K8S架构解析
- 冰箱里的肉冻多久就不能吃了?看完赶快告诉家人