Jenkins学习
Jenkins学习
又是另一个任务,熟悉持续集成工具Jenkins。
Docker安装
- 首先我安装的是Docker CE for Windows,stable。但是启动好慢。。
- Docker
使用Jenkins
- Jenkins说到底就是在一天中,每个人都会进行提交代码,然而有可能会出错,那么找错误是一件有点麻烦的过程;所以这里我们每提交一次代码,然后Jenkins就会自动运行,然后看看它对不对,如果有错的话,那么就会立刻报告。
- 首先你需要在windows powershell中运行“java -jar jenkins.war –httpPort=8080”
- 然后访问localhost:8080即可。
Jenkins
- 在tomcat中使用jenkins和在standalone里面使用是一样的,两个可以同步。比如说我在tomcat中建立了一个project1,然后在standalone中建立了project2,那么它们两个是既可以显示在tomcat中也可以显示在standalone中。
- 然后第三课讲了一下怎样跟改Jenkins的home directory,其实只要跟改一下环境变量里面的系统变量就好了,添加一下JENKINS_HOME,然后写上新Jenkins的位置,然后再把原来的C盘的Jenkins的东西复制过来就好了,最后一点非常重要,修改完环境变量之后记得要重启!!!,因为这个问题我下午找了好久的错。。。
4.怎样使用CLI-command line interface
- http://localhost:8080/cli/ 后有一个命令:
java -jar jenkins-cli.jar -s http://localhost:8080/ help
- 一开始输入那个命令老是不对,后来发现看了别人的留言知道了应该怎样去修改。
create Users + Manage + Assign Roles
- 首先要下载一个插件,叫什么忘记了。然后在Configure Global Security里面进行配置一下,设置授权策略为Role-Based Strategy。
- 然后在Manage and Assign Roles中,你可以Manage Roles,
- Dev.*代表以Dev开头的文件都是属于developer可见的;
- 最后一步就是assign roles。
- 然后就可以进行用户登录尝试了。
Basic Configuration
- 系统设置中的-执行者数量:是指最大一次可以执行几个工作。
- 管理节点-new node意味着你增加一个新的machine。
- 其他的感觉点击一下问号就会有帮助提示,或者查询一下网络也是可以的。
JOBS
Poll SCM:定时检查源码变更(根据SCM软件的版本号),如果有更新就checkout最新code下来,然后执行构建动作。我的配置如下:
/5 * * * (每5分钟检查一次源码变化)Build periodically:周期进行项目构建(它不care源码是否发生变化),我的配置如下:
0 2 * * * (每天2:00 必须build一次源码)在主面板上有一个编译晴雨表,然后它是根据最近的5次build,然后图标会进行更改。(就是那个太阳/下雨一样的东西)
- 然后会有how to trigger the project remotely。
- 然后再另一个界面上访问:“http://localhost:8080/job/Test1/build?token=1234”即可,其中localhost可以换成自己的ip。
Jenkins integrate with GIT(SCM)
- 先使用的是对本地进行集成。
- 一开始我命令写的有问题,一直在D盘无法切换到C盘,后来才发现本来就是cmd写的有问题,因为D要先切到C盘,然后再进行项目的查找。上面那样就是可以的了。
- 然后在构建触发器那里有一个Poll SCM,有一个日程表。表明你希望多久/多长时间这个Jenkins去check the source code repository to check for the changes.
- 然后就是我们每在github上做一次改变的话,那么它就能够进行检查,然后重新去build。(Jenkins Job will trigger whenever you make any changes in your project.)
CATLIGHT
- CATLIGHT is a Jenkins Build Monitor. 它可以监视所有的JOBS在你的Jenkins里面。
- Catlight will notify you when builds, bugs and tasks need you attention.
- 也就是说这玩意可以帮助你知道在sever上的消息,以及相应的改变,它都会进行通知。
Automated Deployment
最后一节讲解了怎样让一个JOB文件生成构建,然后最后形成一个war文件,然后部署到网页上去。