美文网首页
使用 Jenkins 实现项目自动部署

使用 Jenkins 实现项目自动部署

作者: Hesunfly | 来源:发表于2019-08-06 09:32 被阅读0次

    一般我们在开发项目时都会用到版本控制工具,常用的如 git,svn 等。但是每次提交代码后,需要登录到项目运行的服务器上手动拉取代码,如果提交比较频繁,则会是非常繁琐的一项任务。所以应该找到一个可以进行自动部署的工具,来减轻我们的重复操作。Jenkins 就是一个可以解决上述问题的工具,它采用 Java 语言编写,并且是开源项目,我们可以免费使用,接下来介绍一下安装和配置的过程。

安装

我以 centos7 发行版为例,介绍一下安装的过程,为了快速方便,我使用 yum 工具进行安装。

  1. 添加软件仓库源
    sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo
    sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key
    
  2. 安装
  yum install jenkins -y
  ```
3. 安装 java 环境(安装了 java 的可以跳过)   
```shell
  yum install java -y
  1. 启动jenkins
#启动
service jenkins start

#重新启动
service jenkins restart(reload)

#停止
service jenkins stop

#查看运行状态
service jenkins status
  1. 配置防火墙(可选)
    jenkins 默认使用 8080 端口,如果你需要进行修改,可以在 /etc/sysconfig/jenkins 中进行配置。接下来配置防火墙,将8080端口添加到防火墙中:
#查看 firewall 的服务状态
systemctl status firewalld
#查看 firewall 的状态
firewall-cmd --state
#查看防火墙规则
firewall-cmd --list-all
#查寻8080端口是否开放
firewall-cmd --query-port=8080/tcp
#如果未开放进行添加
firewall-cmd --permanent --add-port=8080/tcp
#重启防火墙
firewall-cmd --reload
  1. 进入 jenkins ,使用浏览器打开服务器Ip加上8080端口进行访问:xx.xx.xx.xx:8080

根据页面提示,在 /var/lib/jenkins/secrets/initialAdminPassword 中获取默认密码填入下面的输入框中

$ cat /var/lib/jenkins/secrets/initialAdminPassword

点击continue进入下一步



选择安装推荐的插件,等待插件安装完毕。



完成后配置管理员账户,然后点击一直下一步完成安装。
  1. 安装插件,安装git,以及中文支持插件,不过我安装时这两个插件已经自动安装,根据需要进行进行安装,进如插件管理:


    中文插件名称 Locale plugin,可根据自己的需要进行搜索安装,我的默认已经安装上了。

使用

我使用 github 作为 git 仓库管理平台,所以下面以 github 为例,进行构建部署的演示。

  1. 新建任务


  2. 填写项目信息,我的是php项目,所以参考下图进行合理配置


  3. 配置项目





    添加凭证




    这里先暂时进行保存,然后去设置其他参数
  4. Github 的相关设置
    设置webhook:
    打开需要部署的仓库主页,进去setting->webhooks模块,添加一个webhook




    设置私钥




    生成后,将token保存下来。
  5. 在jenkins中设置github的相管信息
    进入系统管理->系统设置,找到github的配置项



    添加凭证



  6. 继续对创建的项目进行配置





    还有一些其他的配置,根据自己的需求进行配置
    7.进行构建


结束

现在 jenkins 的安装和配置已经结束,他还有许多其他的功能,可以自己去进行探索,过几天我会写一篇使用gitlab的构建方式,希望这些能帮助到你!

文章同步发布在我的个人博客中,传送门Hesunfly Blog

相关文章

网友评论

      本文标题:使用 Jenkins 实现项目自动部署

      本文链接:https://www.haomeiwen.com/subject/ctnbdctx.html