实战 | GitLab + Docker 实现多环境部署

网友投稿 335 2022-10-25

实战 | GitLab + Docker 实现多环境部署

这是小小本周的第四篇

这是小小本周的第四篇,本周感冒流鼻涕,啥的,继续更新文章啦。

建立配置文件

这里建立相关的配置文件

设置默认的开发环境为dev环境

设置默认的开发环境

spring: profiles: active: dev

对POM文件进行修改进行打包

这里对POM文件进行修改

dev dev true uat uat pro pro

修改DockerFile文件

在顶级目录修改DockerFile文件,如下

FROM openjdk:11.0.3-jdk-stretchRUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtimeRUN echo 'Asia/Shanghai' >/etc/timezoneVOLUME /tmpADD subject-lib-0.0.1-SNAPSHOT.jar app.jar# spring.profiles.active指定启动环境#-c为清除以前启动的数据ENTRYPOINT ["java","-jar","/app.jar","--spring.profiles.active=${profiles}","-c"]

修改GitLab文件

这里修改GitLab文件

after_script: - docker rmi $( docker images -q -f dangling=true)stages: - build - test - deployjob_build: stage: build script: - mvn clean installjob_test: stage: test script: - mvn testjob_deploy_dev: stage: deploy script: - mvn package docker:build -P dev - if [ $(docker ps -aq --filter name=spring-boot-docker-multi-environment) ]; then docker rm -f spring-boot-docker-multi-environment-dev;fi - docker run -e profiles="dev" -it --name spring-boot-docker-multi-environment-dev -d -p 8081:8081 unchin/spring-boot-docker-multi-environment only: - devjob_deploy_uat: stage: deploy script: - mvn package docker:build -P uat - if [ $(docker ps -aq --filter name=spring-boot-docker-multi-environment-uat) ]; then docker rm -f spring-boot-docker-multi-environment-uat;fi - docker run -e profiles="uat" -it --name spring-boot-docker-multi-environment-uat -d -p 8082:8082 unchin/spring-boot-docker-multi-environment only: - uatjob_deploy_pro: stage: deploy script: - mvn package docker:build -P pro - if [ $(docker ps -aq --filter name=spring-boot-docker-multi-environment-pro) ]; then docker rm -f spring-boot-docker-multi-environment-pro;fi - docker run -e profiles="pro" -it --name spring-boot-docker-multi-environment-pro -d -p 8090:8090 unchin/spring-boot-docker-multi-environment only: - tags

查看构建过程

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:golang反射和接口是如何工作?
下一篇:Spring Cloud + Nacos + Seata整合过程(分布式事务解决方案)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~