vlambda博客
学习文章列表

Jenkins内网使用略谈

项目开发过程中,在没有持续集成以前,比较通用的做法都是由一位开发人员(Team Leader或者组长之类)进行手动打包(或基于脚本半自动打包)。完成后,使用文件传输工具向测试环境上传更新包,启动服务器,提醒研发人员测试。一套完整流程下来,花去的时间少说半个小时,如果再出现编译问题,参数设置,恐怕半天也是很容易就过去( 这里浪费的时间简直令人发指,遇到复杂环境,编译人员的心真的会崩溃)。采用持续集成加快研发效率,避免人工低效工作,是当下许多研发团队采用的解决方案。( 内部目前也基于Jenkins开始持续集成,加快开发测试发布效率),下面简单介绍一下在内网环境中,使用Jenkins部署的一些心得。
1、首先介绍下环境,所谓 内网是完全与互联网隔离,不支持设置代理上网,所有资料只许进不允许出。这种网络环境就禁止了直连互联网,也不允许基于线上下载和更新插件这种模式。所有需要的安装包和插件只能先通过互联网机器下载好,再通过安全介质拷贝到工作环境。不了解持续集成概念的朋友可自行度娘,查阅相关资料。下面将持续集成和持续发布的简略图提供给大家,

图1. 持续集成

Jenkins内网使用略谈

图2 持续发布

使用外网下载Jenkins最新war包,推荐使用war部署,因为在升级时只需要替换相应的war即可,如果是安装包,就需要涉及相关的环境配置等。

2、根据需要打包的项目不同,在Jenkins服务器上安装打包编译的组组件。如Maven,JDK,Nodejs,Ant等等,按需求安装,可以理解为Jenkins仅仅是调用方,真正实现打包还得依赖环境。

3、离线插件下载。由于下载Jenkins是纯净版的,默认不带插件,真实使用时需要依赖插件来完成。插件下载需要注意的地方是,要注意不同的插件依赖的Jenkins版本,最好按照匹配版本来。https://plugins.jenkins.io/,

Jenkins内网使用略谈

图3 插件信息

图4 插件依赖

通过Jenkins管理员上传插件后,即可正常使用。

4、Windows平台下往Linux远程传输文件。通常项目自动编译后,会生成对应包。通过Jenkins可以实现文件自动传输,如果Jenkins部署在Windows机器,而测试环境是Linux机器。需要安装传输工具,Windows下推荐安装OpenSSH,安装后可以跟linux一样,运行Scp命令,配置免密后直接进行文件传输。如果部署包中不包含中文,直接使用PSFTP也是可以的。