一,安装
服务器安装
以centos7为例
1, 安装 添加yum repos,然后安装
1 | sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo |
2, 如果没有java的话要安装java
1 | sudo yum install java |
3. 启动和停止
1 | sudo service jenkins start/stop/restart |
4. 更换主目录
参考:jenkins 更换主目录.md
容器安装
jenkins官方镜像:https://hub.docker.com/_/jenkins,选择合适的tag。
创建docker-compose.yml文件:
1 | version: '2' |
volumes: 配置是将jenkins文件夹挂载在宿主机,做持久化处理。
ports: 将jenkins容器的8080端口映射至主机的8080端口
restart: 自动重启
注意:宿主机jenkins_data目录需要给读写权限
二、访问
1 | http://localhost:8080/ |
第一次访问:
在服务器上的/var/lib/jenkins/secrets/initialAdminPassword 处拷贝初始密码,继续。
安装插件:
完成
三、配置
1,配置凭据
配置访问远程服务器的账号密码
2,配置远程服务器
Jenkins-> 配置->系统配置
注:需安装SSH Plugin插件,才会有SSH remote hosts这一项。
3,配置Job信息
参考批量创建Job
4,授权子用户
安装插件:Role-based Authorization Strategy
jenkins->全局安全设置:
改为Role-Based Stategy
系统管理中会出现【Manage and Assign Roles】选项,点击进入
四、Job任务创建示例
1,新建项目
2,配置
- 源码管理
- 构建触发器
Poll SCM 配置为每半小时扫描一次源码变动。
- 构建
五、主从节点设置
系统管理->管理节点-> 新建节点
创建好的节点列表如下:
六、job配置备份
安装插件:ThinBackup
安装完成后在系统管理列表下方会出现ThinBackup的图标。点击进入后有3个选项:
- Backup Now
- Restore
- Settings
要做到自动备份,就在Settings中修改:
七、问题解决
1,出现报错
- Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post
权限问题,执行如下命令:
1 | 1183 2018-03-20 00:32:26 sudo usermod -a -G root jenkins |
或者
1 | [root@VM_32_86_centos fof_api]# usermod -a -G root jenkins |
2, jenkins mvn: command not found
Jenkins 通过shell脚本调用mvn 命令的时候,是从/usr/bin 文件夹中找命令的,这个时候需要做个软链接
1 | ln –s /opt/maven/bin/mvn /usr/bin/mvn |