配置 Jenkins 自动拉取 gitlab 中的代码并部署 | 您所在的位置:网站首页 › jenkins的workspace可以手动删除吗 › 配置 Jenkins 自动拉取 gitlab 中的代码并部署 |
目录 配置 Jenkins 自动拉取 gitlab 中的代码并部署 1、安装插件 2、设置 gitlab 用户 root 可以通过 ssh 公钥直接下载代码 3、jenkins添加git用户root的私钥 4、在 Jenkins 创建新的任务 5、将代码发布到web服务器 6、准备自动部署web代码 7、配置代码更新后自动触发jenkins进行部署 8、测试gitlab触发jenkins自动部署 配置 Jenkins 自动拉取 gitlab 中的代码并部署 1、安装插件安装以下插件: Credentials Plugin(默认已经安装) #签名证书管理插件 Gitlab Plugin #拉取 gitlab 中的源代码 SSH Plugin #这个插件使用 SSH 协议远程执行 shell 命令。 选择对应的插件进行安装。 ![]() ![]() ![]() 部署 key,让 root 用户可以不输入密码,获取 gitlab 上的源代码,该 key 是使用 git 下拉代码时使用。 在gitlab服务器生成公钥,一路回车,不要输入密码 ssh-keygen查看公钥 cat .ssh/id_rsa.pub复制公钥信息,点击添加密钥。 可以在服务器进行测试 不用密码可以进行克隆,表示配置成功 查看私钥 cat .ssh/id_rsa将私钥内容添加到 Jenkins(private key 选项) 粘贴私钥信息,点击添加 新建项目: ![]() 源码管理选择git,输入代码地址,选择创建好的凭据。 保存之后,点击构建(Build Now) 查看控制台输出 显示success 表示成功。 代码存放位置在: /var/lib/jenkins/workspace/ ls /var/lib/jenkins/workspace/查看项目文件 ![]() 实验拓扑图: web服务器配置 安装apache服务,并启动 yum install httpd -y systemctl restart httpd测试访问 http://ip 默认是80端口 配置root用户无密码登陆 将jenkins服务器的ssh key 拷到web服务器 ssh-copy-id 172.16.251.5 注:需要在哪台机器上自动发布代码,就需要让 jenkins 这台机器的 root 用户可以免密码登录到那台服务器上。添加构建步骤 添加执行命令 再次构建 查看控制台输出 访问web页面,成功。 添加构建触发器,使gitlab中代码更改时自动拉取最新的代码 复制该地址 http://172.16.251.6:8088/project/wryjc 点击生成token后,点击保存 修改gitlab配置,使Webhook可以对本地网络发送请求,修改后保存。 生成wryjc项目的webhook钩子,输入jenkins中的地址及token后保存。 测试webhook,显示200 提示成功 jenkins平台查看,显示成功。 在git服务器提交代码,验证是否可以自动部署: echo "hello this is my devops " >> index.html git add index.html git commit -m "modify index.html" git push -u origin masterjenkins控制台输出成功。 访问web页面,内容改变,表示自动部署成功。
|
CopyRight 2018-2019 实验室设备网 版权所有 |