当前位置: 首页 > news >正文

gitlab+jenkins的ci/cd部署

一.jdk17安装

jdk17下载:

sudo wget https://download.java.net/java/GA/jdk17.0.1/2a2082e5a09d4267845be086888add4f/12/GPL/openjdk-17.0.1_linux-x64_bin.tar.gz

 下载完成后,使用以下命令将压缩包解压到 /opt 目录(你也可以选择其他合适的目录):

sudo tar -zxvf openjdk-17.0.1_linux-x64_bin.tar.gz -C /opt

编辑 /etc/profile 文件,添加 JDK 17 的环境变量:

sudo vi /etc/profile

在文件末尾添加以下内容:

export JAVA_HOME=/opt/jdk-17.0.8+7  # 根据实际解压后的目录名称修改
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH

保存并退出文件后,使配置生效:

source /etc/profile

使用以下命令验证 JDK 17 是否安装成功:

java -version

二.gitlab安装

gitlab下载地址: https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-16.5.1-ce.0.el7.x86_64.rpm

1.上传rpm包

mkdir /app/cicd
yum -y install gitlab-ce-16.5.1-ce.0.el7.x86_64.rpm

2.根据安装提示进行配置

vim /etc/gitlab/gitlab.rb
修改external_url 'http://gitlab.example.com'成自己的地址

注:如果external_url修改完重新加载完配置访问gitlab,报错We're sorry. GitLab is taking too much time to respond.

可能是puma进程不断重启的原因,执行

sudo chmod -R 777 /opt/gitlab/var/puma

3.重新配置gitlab

sudo gitlab-ctl reconfigure

4.访问地址

访问external_url地址,账号root,密码在/etc/gitlab/initial_root_password

三.gitlab配置

1.修改偏好

偏好设置-修改语言为中文-保存-刷新页面

2.修改密码

配置文件中默认密码将会在24h后被删除

头像-编辑个人资料-密码-修改完退出重新登录

3.创建仓库

4.提交代码

四.jenkins安装

jenkins rpm包下载地址: https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.492.2-1.1.noarch.rpm

redhat-stable是红帽的稳定版本

1.安装对应版本的 JDK

yum install -y java-1.8.0-openjdk*# jenkins-2.430-1.1 对应 JDK 版本是 JDK11
yum install -y java-11-openjdk*

2.下载 JenKins 安装包

wget https://mirrors.jenkins-ci.org/redhat/jenkins-2.430-1.1.noarch.rpm --no-check-certificate

3.安装 JenKins

rpm -ivh jenkins-2.430-1.1.noarch.rpm

4.修改 JenKins 配置

vim /usr/lib/systemd/system/jenkins.service

修改信息如下

User=root
Environment="JENKINS_PORT=8888"

5.重启 JenKins

systemctl daemon-reload
systemctl restart jenkins

6.修改防火墙规则将 8888 端口开放

firewall-cmd --add-port=8888/tcp --permanent
firewall-cmd --reload
firewall-cmd --list-ports

7.查看初始密码

cat /var/lib/jenkins/secrets/initialAdminPassword

8.自定义安装插件

Git

GitLab

Localization: Chinese (Simplified)

五.jenkins配置

1.新建item

以静态资源发布为例

2.配置git地址

如果git仓库地址是私有的,必须要有权限才能访问,还要做如下配置

配置分支名字

保存

构建

3.创建脚本文件夹

mkdir /var/lib/jenkins/script

4.修改jenkins用户解释器

grep jenkins /etc/passwd
usermod -s /bin/sh jenkins

5.增加构建步骤

再次构建发现执行成功

六、重点-cicd部署maven项目

1.jenkins安装maven插件

2.服务器安装maven,jdk,git

下载:
wget https://mirrors.aliyun.com/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
解压:
tar -zxvf apache-maven-3.6.3-bin.tar.gz
进入:
cd  apache-maven-3.6.3
获取路径:
pwd配置环境变量:
vim  /etc/profile配置文件添加下面两行内容:
export MAVEN_HOME=/usr/local/maven/apache-maven-3.6.3
export PATH=$PATH:$MAVEN_HOME/bin刷新环境变量:
source /etc/profile
查看maven版本:
mvn -version

3.jenkins配置maven

系统管理-全局工具配置

4.配置maven的settings.xml

进入到maven目录下的conf目录
编辑:
vim settings.xml新增以下内容
<!--本地仓库-->          <localRepository>/usr/local/maven/repository</localRepository><mirrors><!--阿里云镜像--><mirror><id>aliyun-maven</id><mirrorOf>central</mirrorOf><name>aliyun maven mirror</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url></mirror></mirrors>

5.jenkins配置jdk、Git

注意:都需要取消自动下载。

6.部署maven项目

新建item

配置git仓库地址

跳过test模块

点击保存后构建

7.添加脚本

保存重新构建

http://www.lryc.cn/news/606893.html

相关文章:

  • 《R for Data Science (2e)》免费中文翻译 (第3章) --- Data transformation(1)
  • ceph 14.2.22 nautilus Balancer 数据平衡
  • gitlab 开发人员无法创建分支,管理员配置分支权限
  • 「一键召唤 007」:开源多智能体 JoyAgent-JDGenie 如何让你的 AI 产品从 Demo 到 真香 只差 Ctrl+C / Ctrl+V?
  • Linux 内存管理之 Rmap 反向映射
  • 07-netty基础-自定义编解码器
  • Linux信号捕捉与穿插中断
  • linux中posix消息队列的使用记录
  • 鸿蒙系统下的动态负载均衡实战:让分布式任务调度更智能
  • 等保2.0指南:从系统等级划分到测评全流程攻略
  • 【PyTorch✨】01 初识PyTorch
  • 算法提升之数学(唯一分解定理)
  • 【unity小技巧】封装unity适合2D3D进行鼠标射线检测,获取鼠标位置信息检测工具类
  • Linux通用SPI作为Master——回环测试
  • 多屏混合KVM Dock扩展坞 如何打造极致高效生产力
  • 9.1无法恢复的错误与 panic!
  • Codeforces Round 1040 (Div. 2) A - D题详细题解
  • 第13届蓝桥杯Python青少组中/高级组选拔赛(STEMA)2021年10月24日真题
  • 项目上传到github中
  • Web3.0如何塑造互联网的未来
  • Spring AI MCP:解锁大模型应用开发新姿势
  • GitLab Docker Compose 迁移后 Redis 权限问题排查与解决
  • Linux中Docker Swarm介绍和使用
  • 深度学习-梯度爆炸与梯度消失
  • 宝塔服务器挂载数据盘
  • Hive SQL (HQL) 编辑指南
  • Jupyter Notebook 使用指南
  • 深度解析:Nginx的卓越性能
  • Java 24 新特性解析与代码示例
  • 理想I8对撞乘龙卡车,AI基于数学和物理的角度如何看?