Appearance
Jenkins部署流程
1、Jenkins地址
- [工作台 Jenkins]
- 账号:admin
- 密码:232108e28b46477597e80a4fa045aa73
2、部署流程
1、接口部署流程
创建项目文件夹 先择对应分组,测试部署还是生成部署


创建jar部署项目


测试服部署脚本
shell#!/bin/bash # 设置环境变量防止进程被杀死 export BUILD_ID=DONTKILLME _DEPLOYER='root' _LOG_DIRECTORY="/home/logs" _PROFILES='test' # 重启应用函数 function restart() { SERVICE_CONFIG=$1 SERVICE_NAME=$(echo $SERVICE_CONFIG | cut -f1 -d';') SERVICE_PORT=$(echo $SERVICE_CONFIG | cut -f2 -d';') MEMORY_MAX=$(echo $SERVICE_CONFIG | cut -f3 -d';') # 创建工作目录并拷贝jar包 WORKSPACE_PATH="/home/workspace/${SERVICE_NAME}-${SERVICE_PORT}" mkdir -p ${WORKSPACE_PATH} cp target/$SERVICE_NAME.jar ${WORKSPACE_PATH}/app.jar echo "CP 完成,状态码: $?" # 调试信息 echo "SERVICE_CONFIG: $SERVICE_CONFIG" echo "SERVICE_NAME: $SERVICE_NAME" echo "SERVICE_PORT: $SERVICE_PORT" # 本地执行启动脚本(移除了SSH) /home/start_bash -s -- \ -t "${WORKSPACE_PATH}/app.jar" \ -a "-Xmx${MEMORY_MAX} -Xms${MEMORY_MAX} -Dserver.port=${SERVICE_PORT} -Dspring.profiles.active=${_PROFILES}" \ -l \ -f "${_LOG_DIRECTORY}/${SERVICE_NAME}-${SERVICE_PORT}.log" \ -p ${SERVICE_PORT} } # 项目编译 MAVEN_BIN="/usr/local/maven3.9.9/maven-3.9.9/bin/mvn" ${MAVEN_BIN} clean package -am -U -e -Dmaven.test.skip=true if [ $? -ne 0 ]; then echo "编译失败,退出部署流程" exit 1 fi echo "构建成功,开始部署..." # 服务配置(示例配置) SERVICE_CONFIG='demo;13900;128m' restart "${SERVICE_CONFIG}" # 等待应用启动 sleep 10 echo "=========== 部署完成 ==========="修改内容
SERVICE_CONFIG='demo;13900;128m'demo→ 实际项目包名- 13900 → 实际项目运行端口
- 128m → 项目运行堆内存
2、管理端页面部署
创建项目(流程同上)
部署配置

部署脚本
shell#!/bin/bash # 构建项目 npm install --registry=https://registry.npmmirror.com npm run build:prod if [ $? -ne 0 ]; then echo "构建失败" exit 1 fi echo "构建成功" # 发布逻辑 PROJECT_NAME='children' if [ -d "/home/web/${PROJECT_NAME}/manager" ]; then tar -czf /tmp/${PROJECT_NAME}_manager_$(date +%Y%m%d%H%I%S).tar.gz -C /home/web/${PROJECT_NAME} manager find /home/web/${PROJECT_NAME}/manager -type f -delete find /home/web/${PROJECT_NAME}/manager -mindepth 1 -type d -empty -delete rmdir /home/web/${PROJECT_NAME}/manager fi mkdir -p /home/web/${PROJECT_NAME} mv dist /home/web/${PROJECT_NAME}/manager修改内容
PROJECT_NAME='demo'demo→ 实际项目名