jenkins实现自动部署
Posted bad_boy_f
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jenkins实现自动部署相关的知识,希望对你有一定的参考价值。
主机A搭建gitlab。
gitlab下载:https://www.gitlab.cc/downloads/ (gitlab中文网)
主机B搭建jenkins
jenkins下载:https://jenkins.io/index.html (gitlab官网)
两端同时下载 openssl-server
gitlab端建好,创建一个项目。首先需要在gitlab端配置jenkins的公钥。
在设置中找到deploy keys
在jenkins服务器上用jenkins用户。
$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
#Adding your SSH key to the ssh-agent
$ eval "$(ssh-agent -s)"
$ ssh-add ~/.ssh/id_rsa
$测试一下
ssh -T git@gitlib.com #如果报了什么错 看这里 https://help.github.com/articles/testing-your-ssh-connection/
命令生成一对秘钥。将 ~/.ssh/id_ras.pub的内容复制Key中,title随便写。
还有很重要的一步:jenkins服务器上必须下载git,因为jenkins服务器是用git来拉取代码。
addKey添加。
jeckins端搭建好在浏览器直接输入ip加端口号就可以访问,端口默认8080.在jenkins上新建一个项目。点击项目点击配置
上面这些是最重要的,填上Repository URL不报错才算成功。这个地方当时弄了好长时间。
这个地方的Repository Url 是项目的SSH地址,如下图那样。
下图中红素圈起来的地址复制下来。
将上面复制的地址粘在gitlab端的设置-->Webhooks中的url的位置,secret token没有可以不填。下面选的是什么事件,这里选的push,上图中写的master分支,master分支有push的时候就会触发构建。点击最下面的按钮 add webhook。
这个位置写上触发构建后执行的命令。当构建成功后,jenkins会把gitlab中的代码copy进jenkins服务器,进入的目录就是项目中的目录。
jenkins比较强大,还有其他很多功能。如构建成功后发送邮件等。
参照:
https://help.github.com/articles/connecting-to-github-with-ssh/ 配置Deploy Keys的详细过程。这个是github的,但是和gitlab步骤一模一样。
以上是关于jenkins实现自动部署的主要内容,如果未能解决你的问题,请参考以下文章