|NO.Z.00049|——————————|^^ 部署 ^^|——|CI/CD&Jenkins_Harbor部署.V06|——|部署_Git|Maven报错处理|
一、CI/CD.Git服务部署
### --- Git服务部署:centos7.x 10.10.10.14 git 服务器
~~~ 安装Git服务器端
[roo1t@git ~]# yum install -y git
### --- 创建Git用户
~~~ 创建git用户并设置密码为1qaz2wsx(为开发人员拉代码时设置的用户)
[root@git ~]# useradd git
[root@git ~]# passwd git
### --- 创建Git仓库
~~~ 配置完仓库后,我们需要找一台机器测试是否能够成功从仓库中拉取代码,
~~~ 或者上传代码到该仓库。
[root@git ~]# su - git // 切换到git用户下
[git@git ~]$ mkdir easy-springmvc-maven.git/ // 在git用户家目录下创建一个repos目录,repos目录下创建各个项目的目录
[git@git ~]$ cd easy-springmvc-maven.git/
[git@git easy-springmvc-maven.git]$ git --bare init // 初始化仓库,如果不初始化,这仅仅就只是一个目录
[git@git easy-springmvc-maven.git]$ ls -a
. .. branches config description HEAD hooks info objects refs // 查看初始化后仓库信息
二、安装Git客户端——IP:10.10.10.12,jenkins服务器进行测试
### --- 安装Git客户端
~~~ 安装 git 客户端:拉取代码
[root@jenkins ~]# yum install -y git
三、Git测试
### --- git.clone测试
~~~ 测试clone远端git仓库
[root@jenkins ~]# git clone git@10.10.10.14:/home/git/easy-springmvc-maven.git
[root@jenkins ~]# ls
easy-springmvc-maven
### --- git.push测试
~~~ 第一次的话会有报错警告,说让配置邮箱和姓名。
~~~ 配置一下即可,或者直接执行给出的命令执行即可。
[root@jenkins easy-springmvc-maven]# touch index.html
[root@jenkins easy-springmvc-maven]# git add .
[root@jenkins easy-springmvc-maven]# git commit -m "jenkins"
### --- git.push测试
~~~ # Gitpush测试
[root@jenkins easy-springmvc-maven]# touch index.html
[root@jenkins easy-springmvc-maven]# git add .
[root@jenkins easy-springmvc-maven]# git config --global user.email "yanqi_vip@yeah.net"
[root@jenkins easy-springmvc-maven]# git config --global user.name "yanqi"
[root@jenkins easy-springmvc-maven]# git commit -m "jenkins"
[master (root-commit) 9b9967e] jenkins
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 index.html
~~~ # push到master分支
[root@jenkins easy-springmvc-maven]# git push origin master //提交到主分支(默认分支)
git@10.10.10.14's password:1qaz2wsx
Counting objects: 3, done.
Writing objects: 100% (3/3), 208 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To git@10.10.10.14:/home/git/easy-springmvc-maven
* [new branch] master -> master
四、Git.ssh秘钥配置
### --- Git.ssh秘钥配置
~~~ 生成ssh秘钥
[root@jenkins ~]# ssh-keygen
[root@jenkins ~]# cat /root/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCqyWhdWhod3fz9YNygWhnQjXpZ4lko7SivNATIy1vVgyouEXkFeW2VujpxRU3VCvMXxO7C67iefahnLFm5UX4ZJTDzl9gXblzD3/GhJ0QL2BIjXidY0+eqtNYSx0bxvnYl9sCPXae9S0GyVmIfDyTh6gqWkusTvI3lIu4tfYfn4Y6W2ovBq+Cf/2oe1cFe6jtJnIscA2PeliOT90Gw3Y9wDRm/T1BE+V9Vr1kZ0kvTja+0zKd37sXL2oJwNnECK/kAgV7Paan3WdD9WQ4MhzWPMeuiPbf8MWBKssu8ZRnpQ5ZD4GcYQXqYLR5E3Kslpo9lsbXwpXBSOv4e/lg4Y6B7 root@jenkins
### --- 10.10.10.14 git 服务器进行配置
~~~ Git服务器端配置
[root@git ~]# su - git
[git@git ~]$ mkdir -p .ssh/
[git@git ~]$ chmod 700 .ssh/ // 给予目录700权限
[git@git ~]$ vim .ssh/authorized_keys // 写入10.10.10.12服务器的公钥
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCqyWhdWhod3fz9YNygWhnQjXpZ4lko7SivNATIy1vVgyouEXkFeW2VujpxRU3VCvMXxO7C67iefahnLFm5UX4ZJTDzl9gXblzD3/GhJ0QL2BIjXidY0+eqtNYSx0bxvnYl9sCPXae9S0GyVmIfDyTh6gqWkusTvI3lIu4tfYfn4Y6W2ovBq+Cf/2oe1cFe6jtJnIscA2PeliOT90Gw3Y9wDRm/T1BE+V9Vr1kZ0kvTja+0zKd37sXL2oJwNnECK/kAgV7Paan3WdD9WQ4MhzWPMeuiPbf8MWBKssu8ZRnpQ5ZD4GcYQXqYLR5E3Kslpo9lsbXwpXBSOv4e/lg4Y6B7 root@jenkins
[git@git ~]$ chmod 600 .ssh/authorized_keys // 给予文件600权限
### --- 免密clone测试
[root@jenkins ~]# git clone git@10.10.10.14:/home/git/easy-springmvc-maven.git
### --- 无法建立连接解决方案
~~~ 更改jenkins用户为root用户;
~~~ 更改jenkins用户为正常的普通用户/bin/bash,将其的公钥加入到git服务器的git用户中。
~~~ 此处暂时先用第一种解决办法,更改 jenkins 的运行用户为 root 用户,通过如下方式进行更改:
~~~ # 将/etc/sysconfig/jenkins文件由
[root@jenkins ~]# vim /etc/sysconfig/jenkins
JENKINS_USER="jenkins"
~~~ # 改为
JENKINS_USER="root"
~~~ # 然后再重启即可。
[root@jenkins ~]# systemctl restart jenkins.service
### --- 报错现象:
~~~ 无法连接仓库:Invalid remote URL: git clone git@10.10.10.13:/home/git/repos/app.git
### --- 解决方案:
~~~ 配置秘钥
附录一:Git commit报错处理
### --- 报错现象
Run
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
### --- 解决方案
[root@jenkins easy-springmvc-maven]# git config --global user.email "yanqi_vip@yeah.net"
[root@jenkins easy-springmvc-maven]# git config --global user.name "yanqi"
附录二:CI/CD.Maven报错处理
### --- 报错现象:Maven报错处理
~~~ # 报错现象:Maven报错
~~~ ——>Dashboard——>maven-docker项目
~~~ ——>Build
~~~ ——>Maven Version
~~~ ——>Jenkins needs to know where your Maven is installed.
~~~ ——>Please do so from the tool configuration.
### --- 解决方案
~~~ ——>Dashboard——>全局工具配置——>Maven安装——>name:maven3.0.5
~~~ ——>MAVEN_HOME:/usr/share/maven
### --- 查看maven安装路径
~~~ 查看maven的安装地址
[root@jenkins ~]# which mvn
/usr/bin/mvn
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
分类:
cdv015-jenkins2
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」