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实现自动部署的主要内容,如果未能解决你的问题,请参考以下文章

Jenkins与Gitlib实现自动化部署与持续构建

Jenkins环境搭建部署实现代码自动化发布

如何用Jenkins实现自动化部署svn更新代码

如何用Jenkins实现自动化部署svn更新代码

如何用Jenkins实现自动化部署svn更新代码

jenkins实现项目自动部署