jenkins使用

452 阅读2分钟

一、docker安装jenkins

docker run --name jenkins_zxp -itd -p 11005:8080 -p 50000:50000 jenkins/jenkins:lts
#-itd参数是让docker启动后能一直运行,如果不加,则在容器启动后执行完就立刻退出
docker logs -f jenkins_zxp #里面有jenkins管理员密码,用于http://203.195.161.212:11005 访问的地址

#如果11005没有放行,需放行
firewall-cmd -add-port=11005/tcp —permanence    #放行11005端口
firewall-cmd —reload    #重新搭载防火墙规则

相关文档

二、Jenkins插件配置

配置加速地址:登录后: 系统管理-> 插件管理 -> 高级 -> 升级站点(拷贝地址)

拷贝地址源自:清华大学开源软件镜像站

三、如何保存配置好的jenkins

方法一:将容器打包成镜像
docker ps | grep jenkins_zxp #查看容器的id,这里是 6edc94fd0962
docker commit 6edc94fd0962 zxp:1.0 #重命名容器名称
docker run -itd -v /tmp:/tmp zxp:1.0  #容器里的tmp映射到数组机的tmp,前为数组机目录:容器内部目录  
docker ps | grep zxp:1.0 #查看容器名称,这里是pedantic_spence
docker exec -it pedantic_spence cp -r /var/jenkins_home /tmp #交互式终端连接到pedantic_spence容器,容器内部cp复制/var/jenkins_home到容器内/tmp目录
方法二:压缩
docker run --rm --volumes-from jenkins_zxp -v /tmp/backup:/backup ubuntu tar cvf /backup/backup.tar 
#备份容器名称,-v为映射,/tmp/backup映射到容器内/backup
#tmp/backup是宿主机目录,可以自己指定
#/backup/backup.tar 压缩路径
#/var/jenkins_home 备份路径

cd /tmp/backup #可见backup.tar, tar xvf backup.tar可解压

参考

方法三(推荐):docker cp
docker ps | grep jenkins_zxp #查看容器的id,这里是 6edc94fd0962
docker cp 6edc94fd0962:/var/jenkins_home /tmp/ #复制
相关命令
netstat -ntlp #查看端口占用
docker images #查看镜像容器列表

四、Jenkins权限管理

安装相关插件,PAM Authentication pluginMatrix Authorization Strategy Plugin 矩阵式授权策略、 Role-based Authorization StrategyLDAP Plugin 授权鉴权、Gitlab AuthenticationBuild TimeoutDashboard View 自定义操作面板、Folders PluginThinBackup 备份Jenkins、AnsiColor 添加有色输出、Build With Parameters 构建添加参数

4.1 基于角色项目的权限管理

系统管理 -> 全局安全配置 -> 授权策略 -> Role-Based Strategy 然后
系统管理 -> Manage and Assign Roles -> Manage Roles 角色创建完成即可分配角色

4.2 基于安全矩阵的权限管理(基于用户)

系统管理 -> 全局安全配置 -> 安全矩阵 需要将当前用户添加到矩阵

4.3 gitlab集成的权限管理方案(官方不推荐)

  1. 凭据->系统->全局凭据->添加凭据,配置如下
    11111
  2. 用之前的ssh key权限太高,需单独为jenkins访问gitlab创建ssh key
ssh-keygen -t rsa -b 4096 -C "419582275@qq.com"
Enter file in which to save the key (/root/.ssh/id_rsa): /usr/Downloads/temp/deploy
Enter passphrase (empty for no passphrase): 123456 #加密部署密钥