首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

jenkins配合码云完成自动部署

1、安装jenkins

在官方网站上下载jenkins的.war文件

https://jenkins.io/download/

安装java-1.8.0-openjdk-devel

安装tomcat,将jenkins.war文件放到tomcat的根目录下

安装nginx,实现用nginx反向代理至tomcat

访问如下网站就可以安装jenkins了

http://www.zhangdazhi.com:88/jenkins

将下面的密码输入即可安装

[root@beijing webapps]#cat /usr/share/tomcat/.jenkins/secrets/initialAdminPassword

0881f080a0c245789dc9d60e0fa374282、安装插件

选择性安装如下插件

进行安装

设置登录到jenkins的账号和密码

3、配置jenkins

设置认证

添加一个远程主机ssh连接时的用户名和密码

添加一个jenkins连接到码云时,登录到码云的用户名和密码

进行管理配置

点击保存即可

4、创建任务

将码云上的代码先同步到jenkins主机,再通过在远程主机上执行命令拷贝到远程主机上,并对之前的版本进行备份

这里要在jenkins主机安装git

点击保存,注意这里要在远程部署的主机上安装rsync,并且将部署的主机的公钥传给jenkins主机,实现ssh秘钥验证,不然在部署的远程主机上执行命令的时候要输入jenkins主机的密码

5、测试

在码云上上传一个代码1.txt

[root@beijing app]#cd /usr/share/tomcat/.jenkins/workspace/[root@beijing workspace]#lsp1  p1@tmp[root@beijing workspace]#cd p1[root@beijing p1]#ls #在jenkins主机发现码云上的代码已经同步到jenkins主机的工作目录中1.txt  README.md[root@luoshanji p1]#cd /app/p1 #在部署的远程主机上查看已经复制到网站的目录[root@luoshanji p1]#ls1.txt  README.md[root@luoshanji p1]#cd /data/backup/[root@luoshanji backup]#ls #发现之前的版本已经备份p1.2018-01-15-23:42:19  p1.2018-01-15-23:49:10

使用sync命令可以只复制改变的文件,文件内容没有发生改变的不会复制,达到增量复制的目的。

6、利用webhook实现自动触发任务

当码云上有新代码上传时会自动进行部署,可以用于测试环境,生产环境尽量不要自动触发

在jenkins上安装Generic Webhook Trigger Plugin插件

进入用户,查看admin用户的API TOKEN

进入安全设置

在码云上的设置

点击测试出现ok说明成功

URL地址格式:

[root@luoshanji yum.repos.d]#cd /app/p1[root@luoshanji p1]#ls #发现代码已经自动部署到远程主机上1.txt  2.txt  README.md[root@luoshanji p1]#cd /data/backup/[root@luoshanji backup]#ls #并且已经备份了

p1.2018-01-15-23:42:19  p1.2018-01-15-23:49:10  p1.2018-01-16-00:45:35  p1.2018-01-16-00:48:49[root@luoshanji backup]#cd p1.2018-01-16-00:48:49[root@luoshanji p1.2018-01-16-00:48:49]#ls1.txt  README.md

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20210105A0GSJM00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券