创建自由模式的jenkins任务
192.168.88.102 jenkins 所在服务器
root@hadoop .ssh# sudo groupadd jenkins
root@hadoop .ssh# sudo useradd -r -m -d /var/lib/jenkins -s /bin/bash -g jenkins jenkins
root@hadoop .ssh# sudo passwd jenkins
Wang#1234 密码复杂度要符合要求
root@hadoop .ssh# su jenkins 切换用户
jenkins@hadoop home$ sudo -u jenkins ssh-keygen -t rsa -b 4096 -f /var/lib/jenkins/.ssh/id_rsa -N "" 重新生成公钥私钥
Generating public/private rsa key pair.
Your identification has been saved in /var/lib/jenkins/.ssh/id_rsa.
Your public key has been saved in /var/lib/jenkins/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:XcAQa/v9xTj0KVNbOGecjXB2yEgX5Ol5eCigKgihRAg jenkins@hadoop
The key's randomart image is:
+---RSA 4096----+
|E. o+. ..+. |
|o ..o = o |
|.. o . + B .|
|o. . + o = Oo|
|o S . . XoO|
| . . . . . o.X+|
| . . . . .ooo+|
| . .oo |
| . |
+----SHA256-----+
jenkins@hadoop home$ cd /var/lib/jenkins/.ssh/
jenkins@hadoop .ssh$ ll
总用量 12
-rw------- 1 jenkins jenkins 3243 1月 14 02:23 id_rsa
-rw-r--r-- 1 jenkins jenkins 740 1月 14 02:23 id_rsa.pub
-rw------- 1 jenkins jenkins 668 1月 13 15:56 known_hosts
cat id_rsa 查看私钥,将私钥拷贝黏贴到 下图所示的private key 中
-----BEGIN RSA PRIVATE KEY-----
MIIJJwIBAAKCAgEAkmDQW/NFCHen7d/VmpbyAEvelRj7QmB7wpzmeu+3BKhw67PI
V2Yta6cgw469nyJAHcMDRQ9h0BwxLBVff0hrAE/XtbWBkWH247pVN6TlSKlPRwII
GUyd/GvdOsbQ+hfJMbdm3ccC6/1D+jhMcetNZ1BWWPrzZ0ncT/YskUvZ48rWbT3N
ziG0EwA0ZLjLI4WfYP4i6MBuqyVPCC3wuDX3W3pteF9Q9ywyyPcrnlNtXm8+54wO
RzP8xDiDuhvsH9A+fVCAHRCb/Pafxz6c4h/z5OcOnVsMOoJ1puWm2+aLz6lbGq8T
wRxKllg1UEOOumHwdij7V5zrV3dA5qeffurL96YgbsbirccVrbAQG2ohWOLXG+/B
lCosBzrqr9OTA08P46yTHJ4W219KzjrbD5IBqP8Fo4rL6d/UTh0RSYvvW2qpYjei
4PmOC1IfhrMnUWtfqoxLBa9SYZwgc3/YQ28fm8tBntgHnltuh++D3hP8jVeY9G/X
bjNfy1yoJcQ+NwKCAQEAwPVtiAFgNvFF24+lMS2eejHQFp/lvbBJhLS8y0RjuYBA
cfQ+jHd9ttlZOCDH5cDehpVcfvQikzX7Axaa+WiAbAtXP79ceLZX1ILxEpxBU7+p
kkaEOq/OG8vARSFZPnVVmt4BqagB8t01Afl31HnqFrbO7ltoVvRmedF/JDgTOLAf
B8zdobz2uAQQWh1XMrPgdmQSiZr7VEU0RpGwrRaH3eR9u4CFoYfCES5q9OOgg0iG
pGytoj+NuoYd2p94sCdkSGfCNCNv9BrXK7NcLVSSDzDIcSUUVFbbuIts9EOBdKOU
CkeeAkvYp6gvOBGFehlAIl1/C6kYThSySbSgWhQpDQKCAQBmgEeffv13+YohOx8Z
jZkF5P4FoNWYPKendSBHbSRcWnXn3GbWg1GJBrFui3343fMWDHTZ3iDhYygz7Vxh
Qxu3qdUhKmM/4OErQ7NzkYeIL8SDVGIgS9WoqsrBKg4QDQzWhwwMd3tAKmu7Ja2I
HkQmLcXNiTRDN7ZUuIa4nBsuXSoUXRUabgpT5hc7JyYwqzAz7dgY4O00g82rYgdg
CYbVERb+MY7X5eIg7opLBch/NT6AYXsnjKJvkg2Zq8DTLGmdHWWwnmrUFbQVIXv4
UXQKPxh20VkuF9JfaTt//i0XY5s7OG+fPMasTGR4rTehLWbyMt18j72bTQ==
-----END RSA PRIVATE KEY-----
id 是自动生成的不用填
描述:起一个自己能识别的名字
username 是jenkins 所在服务器上,创建的jenkins用户

cat id_rsa.pub 查看公钥
将公钥拷贝到gitlab 对应项目下的SSH key 配置项中
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCSYNBb80UId6ft39WalvIAS96VGPtCYHvCnOZ677cEqHDrs8hXZi1rpyDDjr2fIkAdwwNFD2HQHDEsFV9/SGsAT9e1tYGRYfbjulU3pOVIqU9HAggZTJ38a906xtD6F8kxt2bdxwLr/UP6OExx601nUFZY+vNnSdxP9iyRS9njytZtPc3OIbQTADRkuMsjhZ9g/iLowG6rJU8ILfC4Nfdbem14X1D3LDLI9yueU21ebz7njA4jXhaZ2I3xKNg0Gye2xGl6+SbA2S8wxqZHB6Z3ogq8BpOgnWOwC9kkFrO8WenoLTGNWM7mG0514Qp2f3xTL23EI/2ZKvra+Q2qAHsh+9izmgmB3gNRUnBgfBSwx9rB3DxDfsT+3PDMtV5pNPffm2IKtf3RMYpOlnRD11dOsBrO605MOI2qTgQBSCEl9x3iRRw0+odagQO8ux5NbqSIqizn3yw== jenkins@hadoop

jenkins@hadoop .ssh$ systemctl start jenkins
jenkins@hadoop .ssh$ ps -ef | grep genkins
jenkins 63308 60452 0 02:29 pts/0 00:00:00 grep --color=auto genkins
jenkins@hadoop .ssh$ ps -ef | grep jenkins
root 60451 49834 0 02:21 pts/0 00:00:00 su jenkins
jenkins 60452 60451 0 02:21 pts/0 00:00:00 bash
jenkins 63197 1 73 02:29 ? 00:00:39 /usr/local/jdk-17/bin/java -jar /usr/share/jenkins/jenkins.war --httpPort=8080
jenkins 63606 60452 0 02:30 pts/0 00:00:00 ps -ef
jenkins 63607 60452 0 02:30 pts/0 00:00:00 grep --color=auto jenkins 说明启动成功
192.168.88.128 是gitlab 所在的机器
jenkins@hadoop .ssh$ git ls-remote -h git@192.168.88.128:emall-group/common.git HEAD 检查是否连接到gitlab 并且能访问分支
创建一个自由风格的jenkins任务

添加git 路径和私钥,并选择需要拉取的分支,保存

点击构建

查看控制台输出,最后显示success ,并且日志重打印出拉去的分支,说明jenkins + gitlab 自由风格的任务创建并执行成功,拉取到了对应的代码
Verifying host key using known hosts file
> git fetch --tags --progress git@192.168.88.128:emall-group/common.git +refs/heads/*:refs/remotes/origin/* # timeout=10
> git rev-parse refs/remotes/origin/main^{commit} # timeout=10
Checking out Revision 49ae0507c4e11a96fb9c5744e84413215a569d28 (refs/remotes/origin/main)
