1,登录jenkins后,按照图示下载安装gerrit trigger和gerrit code review
2,安装完成后重启jenkins容器
docker restart 0b01a40e7526
3,进入容器,在被挂载var/jenkins_home下创建一个文件(注意被挂载的目录才可以创建文件,其它目录是没权限的),查看文件的用户,该用户就是jenkins用户,后续需要用这个用户来生成ssh key,因为root用户生成的ssh key不能在jenkins的gerrit trigger上找到,原因是创建容器的时候会同时创建一个jenkins用户,gerrit trigger只能识别jenkins用户的ssh key
docker exec it 0b01a40e7526 bin/bash
cd var/jenkins_home
touch ck.txt
ls -alh | grep ck.txt
rm ck.txt
4,回到宿主机给挂载的目录授予jenkins的权限,授予权限后,才可以在容器中以jenkins用户生成ssh key,不然会没有权限
chown jenkins:jenkins /home/my-jenkins
5,再次进入容器,生成ssh key
docker exec it 0b01a40e7526 bin/bash
ssh-keygen -m PEM -t rsa
注意这里生成密钥千万不要使用ssh-keygen,因为通过 ssh-keygen 默认生成的私钥文件id_rsa是新的格式。打开文件可以看到是以 -----BEGIN OPENSSH PRIVATE KEY----- 开头的,正常的文件格式是-----BEGIN RSA PRIVATE KEY-----,gerrit trigger是不能识别的,会提示id_rsa不合法
6,把生成的公钥id_rsa.pub拷贝到gerrit上
7,进入jenkins找到安装好的gerrit trigger,点击进去,按图示操作
8, 配置gerrit trigger
9,点击测试验证success,安装完成