jenkins部署与基本配置

本文详细介绍了使用Jenkins、Gerrit和Docker实现自动化部署的过程。包括如何配置Jenkins镜像,解决权限问题,安装必要插件如CVS和Deploytocontainer,以及通过SSH密钥管理与Gerrit的代码同步。同时,文章提供了具体步骤,如生成SSH密钥、添加公钥到Gerrit,以及如何配置Tomcat Manager等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

jenkins部署

gerrit->jenkins->docker

容器构建

docker run -d --name jenkins -p 8080:8080 -v /opt/local/jenkins:/var/jenkins_home jenkins/jenkins

目前jenkins镜像由jenkins社区维护,直接使用 jenkins:latest获取的是docker官方的镜像已被废弃不再更新。
/var/jenkins_home:jenkins数据文件默认位置

jenkins使用

  1. 首次登陆
192.168.0.69:8087

进入容器文件夹:

   $ cat /var/jenkins_home/secrets/initialAdminPassword,

获取jekins管理员密码,填写在登陆页面。
登陆完成后,会提示创建一个登陆账户,以便日常维护

  1. 插件选择 默认选择即可
    系统管理->管理插件
    需要额外下载两个插件:
    CVS、Deploy to container(负责将war包上传至容器)

  2. 系统配置CVS
    进入系统管理->系统设置进行配置
    首先在服务器容器中生成密钥

docker exec -it jenkins /bin/bash
ssh-keygen -t rsa -C ***@***.com.cn

-C: 只是用于标记
密码为空
可以指定密钥保存地址:/var/jenkins_home/.ssh/id_rsa
文件夹请事先创建,密钥下一步会使用到
在这里插入图片描述

  1. 添加凭据(jenkins从gerrit拉取代码 使用的密钥)
    凭据->系统->全局凭据->添加凭据
docker exec -it jenkins /bin/bash
cd /var/jenkins_home/.ssh/
cat id_rsa

在这里插入图片描述
再添加一个tomcat manager的用户名,密码
在这里插入图片描述

  1. gerrit 添加公钥
    setting->SSH Public Keys->Add Keys
docker exec -it jenkins /bin/bash
cd /var/jenkins_home/.ssh/
cat id_rsa.pub
  1. 添加gradle版本
    系统管理->Global Tool Configuration
    在这里插入图片描述

可能遇到的问题

执行完docker run 之后容器没有启动

使用docker run -d 启动容器后,使用docker ps发现容器没有启动,使用docker logs发现报以下错误

[root@d69 ~]# docker logs -ft jenkins  
2019-04-09T09:32:19.564927882Z Can not write to /var/jenkins_home/copy_reference_file.log. Wrong volume permissions?
2019-04-09T09:32:19.564954259Z touch: cannot touch '/var/jenkins_home/copy_reference_file.log': Permission denied

需要修改下目录权限, 因为当映射本地数据卷时,/home/docker/jenkins目录的拥有者为root用户,而容器中jenkins user的uid为1000
解决方法:
首先进入 挂载的文件目录,执行以下命令修改权限

[root@d69 local]# cd /opt/local/
[root@d69 local]# ls
jenkins
[root@d69 local]# chown -R 1000 jenkins
#重启容器
[root@d69 local]# docker start jenkins
jenkins
[root@d69 local]# docker ps
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值