centos安装配置jenkins【配置pipeline】

centos安装配置jenkins【配置pipeline】 文章目录总体文件需求一、安装jdk17二、安装jenkins1.安装2.启动三、安装git四、安装maven1.yum安装2.配置 Maven 国内镜像源解决依赖下载慢五、安装nodejs方式1YUM一键安装方式2nvm安装多版本切换场景必做切换npm国内源解决下载慢/失败六、配置OpenSSh,配置免密码七、编写pipeline脚本八、指定jdk第一步pipline指定使用jdk17编译。第二步jenkins中配件上面jdk17这个名字找到全局工具配置找到jdk安装九、相关链接总体文件需求序号内容作用1jdk17支持环境,jenkins2.5以上用17是推荐的不推荐1.8版本2jenkins2.5主要应用3git获取源代码要用到4maven编译java程序用到5nodejs编译vue程序用到一、安装jdk171先检查系统是否已装旧版 JDK避免冲突java -version #若显示openjdk/java版本信息可卸载旧版可选多JDK可共存 yum remove -y java-1.*-openjdk java-1.*-openjdk-devel2执行安装查找yum search java-17-openjdk执行# 安装开发版推荐包含运行时编译工具 yum install -y java-17-openjdk-devel # 若仅需运行时无需编译代码安装这个即可 # yum install -y java-17-openjdk二、安装jenkins1.安装直接在官网上下载jenkins上传到centos服务器中。2.启动nohupjava-jarjenkins.war21三、安装git用于下载源代码# 1. 先更新YUM源可选确保安装最新版Git yum update -y # 2. 一键安装GitCentOS 7/8/9 通用 yum install git -y # 3. 验证安装成功查看Git版本和Windows Git Bash的验证命令一致 git --version四、安装maven1.yum安装# 1. 一键安装Maven会自动配置全局环境变量 yum install -y maven # 2. 验证安装成功 mvn -v # 示例输出CentOS9Apache Maven 3.8.6 (Red Hat 3.8.6-4)2.配置 Maven 国内镜像源解决依赖下载慢# 1. 编辑Maven全局配置文件vi/etc/maven/settings.xml# 2. 找到mirrors标签在标签内添加阿里云镜像替换原有镜像若无则直接加mirroridaliyunmaven/idmirrorOfcentral/mirrorOfurlhttps://maven.aliyun.com/repository/public/url/mirror五、安装nodejs你需要在CentOS系统中安装Node.js同时会自动安装npm适配CentOS 7/8/9推荐两种最实用的安装方式YUM一键安装简单快捷适合生产和nvm安装灵活切换多版本适合开发两种方式都能直接让node/npm命令全局可用还会补充环境验证、npm源切换解决下载慢的操作执行所有命令需root权限普通用户请在命令前加sudo安装完成后可直接执行node -v/npm -v验证无需额外配置PATH两种方式都会自动配置。方式1YUM一键安装通过NodeSource官方YUM源安装版本比CentOS自带源新一键完成无依赖问题安装后node/npm直接全局可用。操作步骤# 1. 安装NodeSource官方源以Node.js 20.x为例LTS长期支持版适配npm 10推荐生产curl-fsSLhttps://rpm.nodesource.com/setup_20.x|bash-# 2. 一键安装Node.js会自动安装npm与node版本匹配yuminstall-ynodejs# 3. 验证安装成功输出版本即生效node-v# 示例输出v20.11.0npm-v# 示例输出10.2.4版本切换若需要其他LTS版本如18.x、16.x只需替换第一步的源地址Node.js 18.xcurl -fsSL https://rpm.nodesource.com/setup_18.x | bash -Node.js 16.xcurl -fsSL https://rpm.nodesource.com/setup_16.x | bash -Node.js 14.xcurl -fsSL https://rpm.nodesource.com/setup_14.x | bash -本项目使用的是14方式2nvm安装多版本切换场景nvmNode Version Manager是Node.js版本管理工具可一键安装/切换多个Node.js版本如16.x/18.x/20.x不污染系统环境适合需要适配不同前端项目的场景。操作步骤# 1. 安装nvm官方脚本一键完成curl-o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh|bash# 2. 让nvm立即生效无需重启系统刷新环境变量source~/.bashrc# 3. 验证nvm安装nvm--version# 示例输出0.39.7# 4. 安装指定Node.js版本20.x LTS推荐nvminstall20# 5. 设置默认版本全局默认使用20.x新开终端也生效nvmaliasdefault20# 6. 验证安装node-vnpm-v多版本切换用法# 安装18.x版本nvminstall18# 切换到18.xnvm use18# 查看已安装的所有版本nvmls# 查看可安装的所有版本nvm ls-remote必做切换npm国内源解决下载慢/失败CentOS默认用npm官方源国外下载依赖会很慢建议切换为阿里云/npm镜像源全局配置一次永久生效# 切换为阿里云国内源推荐npmconfigsetregistry https://registry.npmmirror.com/# 验证源是否切换成功npmconfig get registry# 输出上面的地址即生效# 可选临时使用源仅当前命令生效无需全局配置npminstall--registryhttps://registry.npmmirror.com/六、配置OpenSSh,配置免密码用于传送文件主要执行下面两条指令#按默认回车完成ssh-keygen-trsa-b2048#传送密钥到服务器ssh-copy-id 用户名服务器ip七、编写pipeline脚本参考官方文档https://www.jenkins.io/zh/doc/下面是我的配置还要设定定时访问git看有没有新代码我设定的是定时2分钟去SCM看代码。这里要选Pipeline script from SCM,表示脚本在代码库里。在项目下建立一个Jenkinsfile,所有的代码写到这里下面是我部分的代码代码解读如下stage是章节可以自己定义比如我定义了。编译前端发布到120服务器发布到wuxi服务器三个章节第一步先npm run build第二步,scp把生成的文件copy到120服务器的nginx指定的目录第三步scp把生成的文件copy到wuxi服务器的nginx指定的目录同理如果要发布后端服务也是先mvn package,然后copy到服务中然后运行。注意scp,ssh指令就是openssh的命令如果有不懂的去查一下这两个指令的意义。八、指定jdk如果我自己的spring boot程序需要运行在jdk17中而我安装jenkins的环境是jdk8.那我要怎么写。第一步pipline指定使用jdk17编译。增加tools章节如下图所示。第二步jenkins中配件上面jdk17这个名字找到全局工具配置找到jdk安装别名第一步tools指定的名字JAVA_HOME你下载下来的JDK的目录。我用的是下载wget https://aka.ms/download-jdk/microsoft-jdk-17-linux-x64.tar.gz解压tar -zxvf microsoft-jdk-17-linux-x64.tar.gz然后放到了/home/jdk17同样指定maven也是这样的套路九、相关链接如何一劳永逸的解决这么复杂的过程建立一个docker image直接pull下来用