jenkins项目部署配置

本文详细介绍了如何通过一系列shell命令实现Apache Tomcat服务器的重启和应用部署过程,包括设置BUILD_ID,复制类文件,查找并杀死tomcat进程,以及重新启动Tomcat.

 

 

export BUILD_ID=dontkillme

cp -rf /home/topxgun/apache-tomcat-top-data/webapps/target/classes/com/* /home/topxgun/apache-tomcat-top-data/webapps/top-data/WEB-INF/classes/com

ps -ef | grep tomcat-top-data | grep -v grep | awk '{print $2}' | xargs kill -9

sh /home/topxgun/apache-tomcat-top-data/bin/startup.sh

 

 

<think> 我们正在讨论Jenkins项目部署的详细流程。Jenkins是一个开源的持续集成和持续部署(CI/CD)工具,它可以帮助自动化软件开发的构建、测试和部署过程。项目部署流程通常包括以下步骤: 1. **安装Jenkins**:在服务器上安装Jenkins,并确保Java环境已经安装(因为Jenkins是基于Java的)。 2. **配置Jenkins**:访问Jenkins的Web界面,进行初始设置,包括安装推荐插件、创建管理员用户等。 3. **安装必要插件**:根据项目需要安装插件,例如Git插件(用于从版本控制系统拉取代码)、Maven插件(如果使用Maven构建)、Pipeline插件(用于定义流水线)等。 4. **配置系统环境**:在Jenkins的系统设置中配置全局工具(如JDK、Maven、Git等)的路径,以及配置环境变量。 5. **创建Jenkins项目**: - 选择新建任务,输入任务名称,选择项目类型(如自由风格项目或流水线项目)。 - 如果是自由风格项目,可以配置源码管理(如Git)、构建触发器(如定时构建或轮询SCM)、构建环境、构建步骤(如执行Shell脚本或调用Maven目标)以及构建后的操作(如部署)。 6. **配置源码管理**:指定代码仓库的URL和凭证,以及分支等。 7. **配置构建触发器**:设置何时触发构建,例如定时构建、轮询SCM(定期检查代码仓库是否有更新)或者通过Webhook(当代码推送到仓库时触发)。 8. **配置构建步骤**:添加构建步骤,如执行Shell命令、Windows批处理命令、Maven目标等,用于编译代码、运行测试等。 9. **配置部署步骤**:在构建后操作中,可以添加部署步骤,例如使用SSH将构建好的工件(如JAR/WAR包)发送到目标服务器,并执行启动脚本。 10. **保存并运行**:保存配置,然后手动触发构建或等待自动触发。 对于更复杂的部署,通常会使用Jenkins Pipeline(流水线)来定义整个CI/CD流程。Pipeline使用Groovy DSL或声明式语法编写,将整个流程分为多个阶段(stage),如构建、测试、部署等。 以下是一个简单的Jenkins Pipeline脚本示例(声明式语法): ```groovy pipeline { agent any stages { stage('Checkout') { steps { // 从Git仓库拉取代码 git 'https://github.com/your-repo.git' } } stage('Build') { steps { // 使用Maven构建项目 sh 'mvn clean package' } } stage('Deploy') { steps { // 将构建好的包复制到目标服务器,并执行部署脚本 sshPublisher(publishers: [ sshPublisherDesc( configName: 'target-server', transfers: [ sshTransfer( sourceFiles: 'target/*.jar', removePrefix: 'target', remoteDirectory: '/app', execCommand: 'cd /app && ./startup.sh' ) ] ) ]) } } } } ``` 注意:上述示例中使用了SSH插件,需要提前在Jenkins配置好目标服务器的SSH连接(在Jenkins的`Manage Jenkins` -> `Manage Credentials`中添加SSH私钥,然后在`Configure System`中配置SSH服务器)。 现在,根据要求,在回答末尾提出3-5个相关问题。 </think> ### Jenkins项目部署详细流程 Jenkins项目部署的全流程包含以下核心步骤: 1. **环境准备** - 安装Jenkins服务器(推荐使用Docker或war包部署) - 配置JDK、Git、Maven/Gradle等基础工具 - 安装必要插件:Git、Pipeline、Deploy to container、SSH等 2. **创建Jenkins任务** - 新建流水线任务(Pipeline)或自由风格项目 - 配置源码仓库地址(Git/SVN)和认证凭据 - 设置构建触发器(如Git Webhook或定时构建) 3. **编写部署脚本** 在Jenkinsfile或任务配置中定义部署阶段(示例): ```groovy pipeline { agent any stages { // 拉取代码 stage('Checkout') { steps { git 'https://github.com/your-project.git' } } // 构建项目 stage('Build') { steps { sh 'mvn clean package' } } // 部署到服务器 stage('Deploy') { steps { sshPublisher( publishers: [ sshPublisherDesc( configName: 'prod-server', // 预配置的SSH服务器 transfers: [ sshTransfer( sourceFiles: 'target/*.war', removePrefix: 'target', remoteDirectory: '/opt/tomcat/webapps' ) ], execCommand: 'systemctl restart tomcat' ) ] ) } } } } ``` 4. **配置部署目标** - 在`Manage Jenkins > Configure System`中添加SSH服务器: - 填写目标服务器IP、SSH端口 - 添加服务器登陆凭据(用户名/密码或SSH密钥) - 配置部署路径和启动命令(如Tomcat重启) 5. **执行与监控** - 手动触发构建或通过Git提交自动触发 - 在Jenkins控制台查看实时日志 - 验证部署结果(如自动运行测试脚本) 6. **回滚机制** - 通过`buildDiscarder`保留历史构建工件 - 添加回滚阶段脚本(如使用SCP恢复旧版本) - 配置邮件/钉钉告警通知 > **关键注意事项**: > 1. 使用`Credentials Binding`插件安全管理密钥 > 2. 生产环境推荐蓝绿部署或金丝雀发布 > 3. 通过`Pipeline Shared Libraries`复用部署逻辑
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值