一、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 plugin、Matrix Authorization Strategy Plugin矩阵式授权策略、Role-based Authorization Strategy、LDAP Plugin授权鉴权、Gitlab Authentication、Build Timeout、Dashboard View自定义操作面板、Folders Plugin、ThinBackup备份Jenkins、AnsiColor添加有色输出、Build With Parameters构建添加参数
4.1 基于角色项目的权限管理
系统管理 -> 全局安全配置 -> 授权策略 -> Role-Based Strategy
然后系统管理 -> Manage and Assign Roles -> Manage Roles 角色创建完成即可分配角色
4.2 基于安全矩阵的权限管理(基于用户)
系统管理 -> 全局安全配置 -> 安全矩阵
需要将当前用户添加到矩阵
4.3 gitlab集成的权限管理方案(官方不推荐)
- 凭据->系统->全局凭据->添加凭据,配置如下

- 用之前的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 #加密部署密钥