二、jenkins之idea提交项目到gitlab、jenkins获取项目

一、idea提交源码到gitlab

使用idea打开项目,把源码上传到Gitlab仓库

首先确保git是正常可用的

开启版本控制

提交代码到gitlab

首先Add到缓存区

再Commit到本地仓库

这里添加仓库地址:使用Ait+F12打开 IDEA 的终端

查看当前配置的git地址:git remote -v

删除git地址:git remote remove gitlab(这里的gitlab就是最前面的名字)

新增git地址 :git remote add origin <你的GitLab地址>,例如:git remote add origin http://192.168.157.159:82/testjenkinszu/web_demo.git

至于上面的地址直接去Gitlab的项目中拷贝url地址即可(第一章我们创建了这个一个项目,且名字和项目名字相同)

然后使用idea的pull即可

然后刷新gitlab就看到项目了

二、rpm安装jenkins

可以使用二进制的rpm文件,也可以使用wget下载,

wget下载地址:

wget https://pkg.jenkins.io/redhat-stable/jenkins-2.346.1-1.1.noarch.rpm(稳定版)

wget https://pkg.jenkins.io/redhat-stable/jenkins-2.387.3-1.1.noarch.rpm(最新版)

bash 复制代码
#(1)下载完成后进行安装
[root@localhost home]# rpm -ivh jenkins-2.346.1-1.1.noarch.rpm 
警告:jenkins-2.346.1-1.1.noarch.rpm: 头V4 RSA/SHA512 Signature, 密钥 ID 45f2c3d5: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:jenkins-2.346.1-1.1              ################################# [100%]

#(2)根据服务器情况可以修改Jenkins配置,防止好tomcat端口冲突
vi /etc/syscofig/jenkins
ENKINS_USER="root"
JENKINS_PORT="8888

#(3)启动Jenkins
systemctl start jenkins.service

(4)、访问web页面:http://192.168.157.160:8080/(服务器ip+端口)

web页面需要输入密码

在服务器下查看密码:cat /var/lib/jenkins/secrets/initialAdminPassword

(5)、跳过插件安装,因为默认是从官网下载的,会很慢,先不安装插件

(6)加一个管理员账户,并进入Jenkins后台

保存并完成

开始使用

使用新建的账户密码登录上去

三、war方式安装jenkins

高版本的jenkins不再提供rpm方式安装,所以使用war方式安装

bash 复制代码
(1)首先下载最新的jenkins包:
wget https://get.jenkins.io/war-stable/2.440.3/jenkins.war -O jenkins.war

(2)下载完成后,把war包放在/home/jenkins中

(3)然后创建文件:vi /etc/systemd/system/jenkins.service,内容如下:
[Unit]
Description=Jenkins Server
After=network.target

[Service]
User=root
Group=root
Environment="JENKINS_HOME=/var/lib/jenkins"
ExecStart=/usr/bin/java -jar /home/jenkins/jenkins.war --httpPort=8080
Restart=always

[Install]
WantedBy=multi-user.target
(4)注意java的位置和jenkins.war的位置要对,可以通过which java看到java的路径

(5)
sudo systemctl daemon-reload #重新加载systemctl配置
sudo systemctl start jenkins
sudo systemctl enable jenkins  # 开机自启
sudo systemctl status jenkins

四、卸载jenkins

卸载命令

bash 复制代码
1)停止服务
systemctl stop jenkins.service

2)删除jenkins包
yum remove jenkins*

3)删除相关文件夹
# 删除 Jenkins 主目录(包含所有配置、插件和构建历史)
sudo rm -rf /var/lib/jenkins

# 删除 Jenkins 日志文件
sudo rm -rf /var/log/jenkins

# 删除 Jenkins 用户(如果存在)
sudo userdel jenkins
sudo groupdel jenkins

# 删除临时文件
sudo rm -rf /tmp/jenkins*

4)查找所有与 Jenkins 相关的文件
sudo find / -name "*jenkins*" -exec rm -rf {} \; 2>/dev/null || true

# 检查是否还有 jenkins 进程运行
ps aux | grep jenkins

# 检查是否还有 jenkins 相关文件
whereis jenkins

五、插件源替换(算了,我下面换的源不好使)

插件源默认用的官网的,比较慢(慢,但是可以用,我不换了),换为国内的华为源

  1. Jenkins 管理界面(临时生效)

输入华为云的源地址:https://repo.huaweicloud.com/jenkins/updates/update-center.json并保存

  1. 配置文件(永久生效,避免重启后恢复默认)
bash 复制代码
cd /var/lib/jenkins/updates

vi default.json

:%s#https://updates.jenkins.io#https://repo.huaweicloud.com/jenkins#g

重启jenkins: systemctl restart jenkins.service

六、使用汉化插件

汉化组件安装好后需要重启jenkins

遇到的坑:这个汉化只能汉化高版本的,我的低版本无法汉化

七、用户角色管理

(1)、安装管理用户的插件

下载完成后,查看右侧有如下3个按钮

(2)设置用户管理方式

点击上面的Security设置授权策略为这个(这个是安装过用户管理插件才会有的)

(3)新增角色

注意:项目名jsryb开头,记得带个.号,然后*是随便匹配的意思。

(4)点击Users新增用户

(5)用户创建完成后,给用户分配角色

注意:lulu1、miaomiao2必须分配baseRole权限,不然登录没有任何权限

(6)创建一个项目

这里解释下:

我们的role2角色负责管理"web"开头的项目

然后role2角色又分给了miaomiao2

所以这个时候miaomiao2是有web开头的项目的,我们登录miaomiao2,查看确实有

八、安装凭证

凭据可以用来存储需要密文保护的数据库密码、Gitlab密码信息、Docker私有仓库密码等,以便Jenkins可以和这些第三方的应用进行交互。

目前我使用的2440.3高版本,好像自带凭据,待确认。低版本的可以安装该插件。

直接搜索,安装该插件

安装成功后,出现这个图标

新版本的jenkins凭证图标这个样子,点击凭证

点击全局

可以看到支持多种格式

遇到的坑:虽然我是高版本,但是管理员并没有看到凭证按钮,我给普通用户分配一下3个权限后,登录普通用户就看到凭证按钮了。

九、jenkins获取git代码

(1)安装git插件和git

首先我们jenkins安装git插件

get插件安装成功后,验证是否安装成功:

我们创建一个项目,发现这个有git就说明git插件拉取成功。

然后jenkin服务器也要安装git。安装完成后使用git --version查看是否安装成功,显示版本说明安装成功

bash 复制代码
[root@localhost tasks]# yum install git -y

[root@localhost tasks]# git --version
git version 1.8.3.1

(2)配置凭证

保存,成功成功

(2)选择项目拉取gitlab的代码

这里我随便选择一个项目

选择凭证后就报错了,最后点击【应用】和【保存】按钮。

然后点击Build Now看看有没有拉取代码

十、maven的安装和配置

(1)服务器安装配置maven

bash 复制代码
#apache-maven-3.6.2-bin.tar.gz上传到/home目录,解压

tar zxvf apache-maven-3.6.2-bin.tar.gz

#配置环境变量
vi /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk
export MAVEN_HOME=/home/apache-maven-3.6.2
export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin

#是配置生效
source /etc/profile

#查看maven版本
mvn -v

(2)jenkins配置maven和jdk

需要配置2个地方,分别是全局配置和系统配置:

设置全局配置

配置jdk

配置maven地址

设置系统配置

配置JAVA_HOME、M2_HOME、PATH+EXTRA,这个配置类似于配置服务器的profile文件,做工是让jenkins感知到JAVA_HOME、M2_HOME的位置。

(3)我们可以设置maven仓库地址和下载源

bash 复制代码
cd /home/apache-maven-3.6.2/conf 

vi settings.xml #修改、新增下面2个地方
  
<localRepository>/home/mavencangku</localRepository> #1、修改这个地址为/home/mavencangku,作用就是把仓库放在/home/mavencangku,这个文件要记得创建


 <mirrors>
    <!-- mirror
     | Specifies a repository mirror site to use instead of a given repository. The repository that
     | this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used
     | for inheritance and direct lookup purposes, and must be unique across the set of mirrors.
     |
    <mirror> 
      <id>mirrorId</id>
      <mirrorOf>repositoryId</mirrorOf>
      <name>Human Readable Name for this Mirror.</name>
      <url>http://my.repository.com/repo/path</url>
    </mirror>
     -->

   <mirror>#2、这一块开始
    <id>alimaven</id>
    <name>aliyun maven</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
    <mirrorOf>central</mirrorOf>
   </mirror>#到这一块结束加上,意思就是配置阿里云的源,jar包下载快一点

  </mirrors>

(4)把jenkins上的项目配置maven命令,尝试build项目

点击我们已经拉取代码的项目

点击配置

设置shell这个

配置如下命令

然后我们点击Build Now

也可以看到打包成功:

相关推荐
Leinwin3 小时前
OpenClaw 多 Agent 协作框架的并发限制与企业化规避方案痛点直击
java·运维·数据库
2401_865382503 小时前
信息化项目运维与运营的区别
运维·运营·信息化项目·政务信息化
漠北的哈士奇3 小时前
VMware Workstation导入ova文件时出现闪退但是没有报错信息
运维·vmware·虚拟机·闪退·ova
如意.7594 小时前
【Linux开发工具实战】Git、GDB与CGDB从入门到精通
linux·运维·git
运维小欣4 小时前
智能体选型实战指南
运维·人工智能
yy55274 小时前
Nginx 性能优化与监控
运维·nginx·性能优化
爱吃土豆的马铃薯ㅤㅤㅤㅤㅤㅤㅤㅤㅤ5 小时前
Linux 查询某进程文件所在路径 命令
linux·运维·服务器
05大叔7 小时前
网络基础知识 域名,JSON格式,AI基础
运维·服务器·网络
安当加密7 小时前
无需改 PAM!轻量级 RADIUS + ASP身份认证系统 实现 Linux 登录双因子认证
linux·运维·服务器
dashizhi20157 小时前
服务器共享禁止保存到本地磁盘、共享文件禁止另存为本地磁盘、移动硬盘等
运维·网络·stm32·安全·电脑