- 移除开发环境的构建和部署配置 - 更新测试环境构建配置,修改标签从mes-test到blog-test - 修改生产环境镜像标签格式,添加版本号v1.0.0 - 更新测试环境应用配置,修改端口从11024到1024 - 修改测试环境context-path从根路径到/mowen-blog - 更新日志目录配置为动态路径 - 修改测试环境数据库连接信息,包括主机地址、用户名和密码 - 更新Redis连接配置,修改数据库编号、主机地址和密码 - 设置token有效期为永久有效(-1)
86 lines
3.0 KiB
YAML
86 lines
3.0 KiB
YAML
variables:
|
||
# 网关/服务配置(保持不变)
|
||
MES_BACK_CONTAINER: "mowen-blog-admin-api"
|
||
MES_BACK_IMAGE: "mowen-blog-admin-api"
|
||
MES_BACK_PORT: 8280
|
||
|
||
# Maven 本地仓库改用项目目录下的 .m2/repository,避免宿主机权限问题
|
||
MAVEN_OPTS: "-Djava.awt.headless=true -Dmaven.repo.local=${CI_PROJECT_DIR}/.m2/repository"
|
||
|
||
# 全局缓存:缓存 Maven 本地仓库,加速后续构建
|
||
cache:
|
||
key: "${CI_COMMIT_REF_SLUG}-maven"
|
||
paths:
|
||
- .m2/repository/
|
||
|
||
stages:
|
||
- build
|
||
- deploy
|
||
|
||
# ==================== 构建阶段 ====================
|
||
build-test:jdk17:
|
||
stage: build
|
||
image: moshangjunmowen/maven-jdk17:v3
|
||
script:
|
||
- echo "=============== 开始编译打包任务(test) ==============="
|
||
- mvn clean package -Dmaven.test.skip=true -P test
|
||
- mkdir -p build
|
||
- cp Dockerfile build/
|
||
- cp mowen-admin/target/mowen-admin-test-1.0.0.jar build/
|
||
artifacts:
|
||
paths:
|
||
- build/
|
||
expire_in: 1 day
|
||
tags:
|
||
- blog-test
|
||
|
||
build-prod:jdk17:
|
||
stage: build
|
||
image: moshangjunmowen/maven-jdk17:v3
|
||
script:
|
||
- echo "=============== 开始编译打包任务(prod) ==============="
|
||
- mvn clean package -Dmaven.test.skip=true -P prod
|
||
- mkdir -p build
|
||
- cp Dockerfile build/
|
||
- cp mowen-admin/target/mowen-admin-prod-1.0.0.jar build/
|
||
artifacts:
|
||
paths:
|
||
- build/
|
||
expire_in: 1 day
|
||
only:
|
||
- main
|
||
tags:
|
||
- pioneer-mes-prod
|
||
|
||
# ==================== 部署阶段 ====================
|
||
deploy-test:jdk17:
|
||
stage: deploy
|
||
image: docker:29.4.3
|
||
needs: ["build-test:jdk17"]
|
||
script:
|
||
- echo "=============== 开始部署应用(test) ==============="
|
||
- cd build
|
||
- docker ps -a | grep $MES_BACK_CONTAINER && docker stop $MES_BACK_CONTAINER && docker rm $MES_BACK_CONTAINER || echo "not exist"
|
||
- docker images | grep $MES_BACK_IMAGE && docker rmi -f $MES_BACK_IMAGE || echo "not exist"
|
||
- docker build --build-arg JAR_FILE=mowen-admin-test-1.0.0.jar -t $MES_BACK_IMAGE:v1.0.0 .
|
||
- docker network ls | grep -w jun-boot || docker network create jun-boot
|
||
- docker run -d --restart=always -p $MES_BACK_PORT:1024 --network=jun-boot --log-opt max-size=50m --log-opt max-file=3 --name $MES_BACK_CONTAINER $MES_BACK_IMAGE
|
||
tags:
|
||
- blog-test
|
||
|
||
deploy-prod:jdk17:
|
||
stage: deploy
|
||
image: docker:29.4.3
|
||
needs: ["build-prod:jdk17"]
|
||
script:
|
||
- echo "=============== 开始部署应用(prod) ==============="
|
||
- cd build
|
||
- docker ps -a | grep $MES_BACK_CONTAINER && docker stop $MES_BACK_CONTAINER && docker rm $MES_BACK_CONTAINER || echo "not exist"
|
||
- docker images | grep $MES_BACK_IMAGE && docker rmi -f $MES_BACK_IMAGE || echo "not exist"
|
||
- docker build --build-arg JAR_FILE=mowen-admin-prod-1.0.0.jar -t $MES_BACK_IMAGE .
|
||
- docker network ls | grep -w jun-boot || docker network create jun-boot
|
||
- docker run -d --restart=always -p $MES_BACK_PORT:1024 --network=jun-boot --log-opt max-size=50m --log-opt max-file=5 --name $MES_BACK_CONTAINER $MES_BACK_IMAGE
|
||
only:
|
||
- main
|
||
tags:
|
||
- pioneer-mes-prod |