Jenkins
Jenkinsjenkins一个持续集成和交付的服务器。Docker安装这里使用docker镜像的方式安装,如果不懂docker 请移步[docker.io]。下载如果比较慢请使用国内镜像库。docker pull jenkins启动大概分为三种情况:直接启动即可docker run -p 8080:8080 -p 50000:50000 jenkins映射容器目录到本地docker r
Jenkins
jenkins 一个持续集成和交付的服务器。
Docker安装
这里使用docker镜像的方式安装,如果不懂docker 请移步[docker.io]。
下载
如果比较慢请使用国内镜像库。
docker pull jenkins
启动
大概分为三种情况:
- 直接启动即可
docker run -p 8080:8080 -p 50000:50000 jenkins
- 映射容器目录到本地
docker run -p 8080:8080 -p 50000:50000 -v /your/home:/var/jenkins_home jenkins
- 使用数据容器卷启动
docker run --name myjenkins -p 8080:8080 -p 50000:50000 -v /var/jenkins_home jenkins
这里使用第二种方式
建立目录用来存储jenkins容器数据
# mkdir -p /var/data/docker/jenkins
jenkins容器会以uid 为 1000来访问此目录,确保具有访问权限。
# chown 1000 /var/data/docker/jenkins
jenkins容器会使用8080和50000端口,并映射建立的目录
# docker run -dp 8080:8080 -p 50000:50000 -v /var/data/docker/jenkins:/var/jenkins_home jenkins
Docker安装请参考[Docker Jenkins]
值得注意的时,如果直接在centos下安装,请务必安装java-openjdk(yum install java-1.8.0-openjdk)版,jenkins使用的java不支持其他jdk。
配置
不管何种方式安装启动,一下内容基本上一致。
浏览器输入http://192.168.34.132:8080/:会显示如下
请去安装目录查找此文件。
如果是docker: 打开刚才建立的目录/var/data/docker/jenkins/下的secrets/initialAdminPassword查看初始化密码输入即可,如果容器不使用-d选项启动过程显示出初始化密码;
下一步选择安装插件(可能比较慢):
- 在线安装选择推荐插件或者选择所需安装;
- 离线跳过在系统管理里安装插件;
- 下载插件到本机安装,离线安装请参考[Offline+Jenkins+Installation];
下一步设置用户;
至此jenkins安装配置完成。
使用
jenkins支持Java、.NET、iOS、Android 等众多平台项目;构建工具支持maven、ant、gradle;源码管理支持git、cvs、svn等;这里以自动构建Java平台的maven项目用svn为例构建持续集成过程。
建立项目
请先安装MAVEN插件[Maven Integration plugin]和配置全局工具
安装插件
[系统管理]-[插件管理]-[可选插件] 搜索[Maven Integration plugin]
安装工具
[系统管理]-[全局工具配置]-需要安装JDK 和MAVEN,如果使用git和docker请自行安装。
- JDK
- MAVEN
新建输入项目名称,选择[构建一个maven项目]
源码管理选择[Subversion],输入项目svn地址,Add一个Credentials,输入svn用户和密码:
添加svn用户
如果使用git,本机为192.168.34.132,请确保在本机(jenkins用户下,jenkins以此用户运行的)上可以免密码登陆git用户@192.168.34.133,关于ssh免密登陆请参阅相关配置。
如果免密登陆失败,请查看/var/log/secure日志。
以下为ssh相关文件权限:
用户目录权限为 755 或者 700,一定不能是77x;
.ssh目录权限一般为755或者700;
authorized_keys和rsa_id.pub权限一般为644;
rsa_id权限必须为600。
Build和Post Steps
Build:输入maven的pom文件路径和执行的Goals;
Post Steps:执行ssh命令将编译好的jar包复制到133上运行;
本机为192.168.34.132,请确保在本机(jenkins用户下,jenkins以此用户运行的)上可以免密码登陆root@192.168.34.133,关于ssh免密登陆请参阅相关配置。
最后选择保存即可。
项目构建
在项目提交源码到svn上之后
回到首页选择我们刚刚建立的项目,进入项目页面点击立即构建:
可以选择 [Build History] 最后一次构建的任务,在选择[Console Output]可以查看任务构建过程:
看一看到Finashed SECCESS,就可以访问到192.168.34.133上启动服务了。
邮件通知
jenkins可以在构建成功后进行邮件通知,请确认jenkins安装了Email Extension Plugin 插件;
[jenkins]->[系统配置]
配置系统管理员邮件地址
配置邮件发送服务器和账户相关信息
可以测试可以发送邮件。
在项目配置里勾选[E-mail Notification] 或者[构建后Editable Email Notification] 填写收件人接口在构建后发送邮件通知。
最后,如果tomcat可以停止,却启动不了,有如下解决方案:
- 启动 Jenkins 的时候加上 -Dhudson.util.ProcessTree.disable=true。
- 在后台进程前加上 BUILD_ID=dontkillme或者正在自己的sh文件中加入如下:
export BUILD_ID=dontkillme
更多推荐
所有评论(0)