0
点赞
收藏
分享

微信扫一扫

gitlab+jenkins+nginx 持续构建实现自动发布

魔都魅影梅杜萨 2022-04-13 阅读 102
gitjenkins

本文模拟PHP项目的代码发布配置,比较简单(因为中间不需要编译打包,直接上传到服务器目录重启应用即可),安装好最新的gitlab+jenkins+nginx ,分别在不同的3台服务器上。

总体思路

  • gitlab建用户,用新用户登录,建新的项目。
  • 给jenkins授权可访问gitlab。
  • nginx配置静态页面目录,及文件。
  • 在jenkins中加入nginx服务器。
  • 在jenkins中配置git项目,设置远程目录,新建流水项目。
  • 在gitlab对应的项目中,新建webhook。

1.gitlab设置

1)用admin进gitlab,新建一个用户跟项目。

2)用新用户登录gitlab,进入用户设置页面,选定具体的用户,并切到“SSH keys”界面,给用户添加公钥。

3)关于公钥私钥的生成,最简单的办法,在linux系统下(可以在jenkins的服务器里执行,因为是jenkins服务器要去链接gitlab),用root执行ssh-keygen命令,会在/root/.ssh/下面,生产两个文件,其中id_rsa.pub是公钥,id_rsa是私钥。将共要文件的内容,粘贴到如上的ssh key里,作为jenkins连接的认证,私钥在后面要用到。

2.jenkins添加nginx服务器

1) 切到jenkins的系统配置页面

2)增加新的ssh server,就是我们刚才新建的nginx 服务器。

3.在jenkins中新建流水项目

1)新建项目

2)源码管理

仓库地址选gitlab的项目链接地址.

要新建一个用户,此处验证方式选ssh username with private key,就是上面linux服务器生成的私钥,粘贴进去。

指定分支,根据自己的情况,如果是main,*/main

 

 

3)触发器构建

 

4)构建环境

服务器就选我们刚才新建的nginx服务器。

源文件,固定格式**/**

远程目录,就是nginx服务器上的代码目录,根据实际情况填写。

执行脚本,就是代码传完后,需要执行的服务器脚本,正常都是重启nginx应用之类的。

4.gitlab中新建webhook

进入gitlab,在对应的项目中,选择设置webhooks

其中URL就是上一步源码管理中生成的URL.

Secret token就是上面生成的安全令牌。

 5. 在jenkins中执行任务,会看到nginx上的文件被更新,nginx被重启。

整个过程中会遇到几次报错,大家直接百度即可,都有详细的解决方案。

 

 

 

 

举报

相关推荐

0 条评论