Skip to content

持续部署

参考:Jenkins详细教程_zhishidi的博客-CSDN博客

珠峰教程笔记:http://www.zhufengpeixun.com/strong/html/61.12.devops-jekins.html

jenkins服务器搭建和项目部署

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

1.背景

在实际开发中,我们经常要一边开发一边测试,当然这里说的测试并不是程序员对自己代码的单元测试,而是同组程序员将代码提交后,由测试人员测试; 或者前后端分离后,经常会修改接口,然后重新部署; 这些情况都会涉及到频繁的打包部署;

手动打包常规步骤:

  • 1.提交代码
  • 2.问一下同组小伙伴有没有要提交的代码
  • 3.拉取代码并打包(war包,或者jar包)
  • 4.上传到Linux服务器
  • 5.查看当前程序是否在运行
  • 6.关闭当前程序
  • 7.启动新的jar包
  • 8.观察日志看是否启动成功
  • 9.如果有同事说,自己还有代码没有提交......再次重复1到8的步骤,费时费力

那么,有一种工具能够实现,将代码提交到git后就自动打包部署勒,答案是肯定的:Jenkins

当然除了Jenkins以外,也还有其他的工具可以实现自动化部署,如Hudson等

只是Jenkins相对来说,使用得更广泛。

Jenkins自动化部署实现原理

Jenkins自动化部署实现原理

Jenkins部署环境

基本环境:

  • 1.jdk环境,Jenkins是java语言开发的,因需要jdk环境。
  • 2.git/svn客户端,因一般代码是放在git/svn服务器上的,我们需要拉取代码。
  • 3.maven客户端,因一般java程序是由maven工程,需要maven打包,当然也有其他打包方式,如:gradle

以上是自动化部署java程序jenkins需要的基本环境,请自己提前安装好,下面着重讲解Jenkins的安装部署配置。

Jenkins安装

https://www.jenkins.io/download/ 下载自己环境对应的war包,我这里是centos7(ip: 192.168.3.101)

下载完后放入自定义目录下,然后启动 java -jar jenkins.war

待启动成功后 访问http://192.168.3.101:8080完成配置

账号 root 密码:看日志得知初始密码

bash
Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:

e4b7e1ff816e464ea94ebd79189736bd

This may also be found at: /root/.jenkins/secrets/initialAdminPassword

密码文件使用后会自动删除

默认选择推荐插件即可。

准备使用

现在还并不能真正开始使用,先安装一些可能的用到的工具/插件

git安装(已安装忽略)
bash
yum install -y git

Maven安装

官网 https://maven.apache.org/

下载后放到Jenkins所在服务器解压缩

为了后面打包速度,先配置一下阿里云镜像,修改xxxx/maven/conf/settings.xml

bash
<mirrors>
    <mirror>
  <id>nexus-aliyun</id>
  <mirrorOf>central</mirrorOf>
  <name>Nexus aliyun</name>
  <url>http://maven.aliyun.com/nexus/content/groups/public</url>
 </mirror>
</mirrors>

进入Jenkins,找到Dashboard --> Manage Jenkins --> Global Tool Configuration

拉到最下,找到Maven,Maven安装,点击新增Maven,名字自己取一个,MAVEN_HOME填自己maven全路径

Jenkins安装插件

登录Jenkins,找到Dashboard --> Manage Jenkins --> Manage Plugins --> 可选插件

搜索publish over ssh并安装(勾选单选框,点击下方按钮"Install without restart")

Released under the MIT License.