在DaoCloud自动化部署时,不知道如何分别构建生产,测试环境镜像。
Dockfile文件里有
ARG BUILD_ENV="uat"
RUN npm run build:${BUILD_ENV}
这样两行代码来区分环境打包的,ARG是用于指定传递给构建运行时的变量,可是创建的BUILD_ENV不知道能在哪里自动获得,是否能关联上哪里配置的环境变量(应用部署时有无负载均衡里面可以配置环境变量来着)。。。
然后,就想到了流水线,可以配置不同的流水线来分别配置生产环境和测试环境,代码其实是同一个gitlab代码库,如下图:
方法一:配置不同的Dockfile文件
方法二:配置不同的npm build
就是流水线的第二步,在构建流水线的时候,可以选择模板(这里分3步)。方法一是直接一个文件配置(分两步)。这里是多分出一个打包的步骤,于是就可以直接在这里面配置了,如下图:
上图是拉取不同的分支打包来区分不同的环境的。。。还是麻烦的。。
这样子,就能构建不同环境的镜像了,发包的时候,注意选择想要的环境更新镜像就可以了,哈哈哈。。。
如果小伙伴儿们有其他方法,记得分享我一下,万分感谢呀!~~~