Jenkins拾遗--第一篇(安装Jenkins)
起因
近期由于工作需要做起了起了jenkins的维护。不做不知道,一搞发现里边全是小坑。两个月弄了一身泥。曾经小瞧了它,但是发现其实要弄好它不是那么容易的。有句知名的话“没有总结就没有提高。”,尝试把这一段的工作总结下来。第一篇是安装Jenkins 相关的内容,不会把Jenkins的doc抄一遍,会写一些doc以外的东西。
版本考虑:
使用LTS的版本,不要有尝鲜心态(满满的bug),新特性不重要。但bug会让你很困扰。
选择Jenkins2以上的版本(这篇文章写于2017年),充分利用Pipline特性。1.x和2.x其实是两个差异很大的版本。2.x的大坑其实已经被很多企业趟平了。
操作系统考虑:
建议linux系统,因为考虑到稳定性,jenkins服务器应该避免放到桌面级,而是放到托管服务器或者云端,这时候window系统或者mac系统就不合适了。
部署host考虑:
- 建议部署到IDC或者云端,将OS和存储的维护交由运维工程师管理,以保持基础服务稳定。Jenksin不是玩具,应该按照生产系统的级别来对待,如果严重依赖CI,它的不 可用影响极大。不做托管,各种断电、磁盘不够、备份安全性、系统安全问题会让维护者欲哭无泪。所以,一定不要随便找台机子就开始安装。
安装方式考虑:
jenkins支持多种方式部署:独立部署(自带轻量级web容器 Winstone Servlet Container ) 部署在容器上的serverlet,docker,几种方式各有利弊,可以根据自己的需要选择。
安装样例(Unbuntu下安装jenkins)
在Ubuntu下我们可以用apt命令搞定安装,这样jenkins会变成一个系统进程(其实就是起了一个Winstone Servlet Container)。
在安装之前,确保你的系统装了1.7版本以上的Java
java -version java version "1.8.0_45" Java(TM) SE Runtime Environment (build 1.8.0_45-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
wget -q -O - https://pkg.jenkins.io/debian/jenkins-ci.org.key | sudo apt-key add - sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list' sudo apt-get update sudo apt-get install jenkins
这样jenkins就被安装好了。
检查安装:
http://安装机ip/:8080 查看安装是否OK。
后续就是密码验证和插件安装阶段了。
端口映射
修改为80端口,这样就不用写端口号了。
修改: /etc/default/jenkins文件 HTTP_PORT=80
域名
如果有内部域名,最好配置一个,毕竟记ip是个很恶心的事儿。
参考文章:
https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins
参考
- jenkins的安装手册(文档极为不完善)https://jenkins.io/doc/book/getting-started/installing/
最新文章
- IPC操作时IPC_CREAT和IPC_EXCL选项的说明
- 设置Ubuntu为本地时间
- TestNG @Factory与 @DataProvider 结合使用进行参数化测试
- ORM系列之一:Dos.ORM
- [BZOJ1067][SCOI2007]降雨量
- C++内嵌汇编代码,简单文件加密
- [SAP ABAP开发技术总结]数据输入输出转换、小数位/单位/货币格式化
- dicom格式文件 界定标识符的处理
- 百度的domain命令到底有用吗?
- 技术型创业者easy遇到的三大问题
- hdu3308LCIS(线段树,点更新,段查寻,查寻时一定要注意跨越时如何计算)
- 笔记之Cyclone IV第一卷第四章Cyclone IV器件中的嵌入式乘法器
- oracle11g ASM(修复损坏的磁盘组头asm修复2)
- [译]Java 设计模式之抽象工厂
- 常用类型转换 一.常用int和string类型转换
- Springdata mongodb 版本兼容 引起 Error [The 'cursor' option is required, except for aggregate with the explain argument
- 图文解说Win7系统机器上发布C#+ASP.NET网站
- 【SRM-05 B】无题?
- java和python对比----1:
- leveldb 学习记录(七) SSTable构造
热门文章
- UOJ #207. 共价大爷游长沙
- ZOJ - 2112 Dynamic Rankings(BIT套主席树)
- ABI是编译器的开发指南
- c++参数传递的三种方式
- 前端css样式及选择器
- RDVTabBarController--可自由定制的iOS底部导航控件
- JS常见内置对象和方法
- BFS算法入门--POJ3984
- Exception occurred during processing request: The given object has a null identifier: com.zsn.crm.Model.SaleVisit; nested exception is org.hibernate.TransientObjectException: The given object has a nu
- js | javascript中获取dom元素的高度和宽度