目录

一、环境安装

Java 11

Git和Node

Nginx

二、Jenkins安装

三、Jenkins启动成功

                1. 查看登录密码

                2. 插件选择

                3. 更换镜像站

                4. 插件安装

                5. node配置

                6. 项目配置 

四、其他问题

                1. 出现403

                2. 配置Node时无下拉版本选择

五、结语


FinalShell

阿里云服务器  CentOS 8.2

一、环境安装

Java 11

 根据jenkins官网:

        自 Jenkins 2.357 和 LTS 2.361.1 起,Jenkins 需要 Java 11 或 17,在这里我们将安装Java 11版本

命令:

  • sudo yum install java-11-openjdk
  • java --version   ---查询java版本
  • which java   ---查询java安装路径
  • java环境变量配置:

1. vim /etc/profile

2. 文件末添加:

export JAVA_HOME=which java查询到的路径
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

3. 

ESC键,然后:wq退出
source /etc/profile   ---使配置的环境变量文件生效


Git和Node

Git安装命令:

  • yum install git

使用nvm安装多版本的node:

        nvm是node.js的版本管理软件,可以轻松在Node.js各个版本间进行切换。适用于有快速更新node版本、快速切换node版本的场景。

使用git将源码克隆到本地的~/.nvm目录下,并检查最新版本。

  • git clone https://github.com/cnpm/nvm.git ~/.nvm && cd ~/.nvm && git checkout git describe --abbrev=0 --tags

 激活NVM

  • echo ". ~/.nvm/nvm.sh" >> /etc/profile
  • source /etc/profile

进入根目录下修改镜像源(镜像源不唯一),命令:

1. cd

2. vim ~/.bashrc

3. 在文件末尾添加:

export NVM_NODEJS_ORG_MIRROR=http://nodejs.org/dist

4.

ESC键,然后:wq退出

source ~/.bashrc

nvm查询node版本并安装

  • nvm list-remote 
  • nvm install v版本号
  • nvm ls ---查询已安装的node版本
  • nvm use 版本号 ---切换node版本
  • node -v ---查询当前node版本
  • npm -v ---查询当前npm版本

Nginx

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强。
特点:负载均衡、反向代理

 安装命令

  • yum install -y nginx
  • systemctl start nginx.service
  • systemctl enable nginx.service ---设置开机启动

浏览器输入服务器IP出现以下界面说明安装成功


二、Jenkins安装

 根据jenkins官网:

        每 12 周从常规版本流中选择一个LTS(长期支持)版本作为该时间段的稳定版本。它可以从 yum 存储库安装 

命令:

  • sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo 
  • sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
  • sudo yum install jenkins
  • sudo systemctl daemon-reload
  • jenkins环境配置:

1. vim /etc/init.d/jenkins
2. 找到文件中的candidates='  ',在引号末尾添加:which java查询到的路径
3.

ESC键,然后:wq退出
systemctl daemon-reload

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

5. 文件找到User和Group修改为:
User=root
Group=root

6.

ESC键,然后:wq退出
systemctl daemon-reload

进入jenkins目录,可通过whereis jenkins查询

  • cd 查询到的路径
  • sudo systemctl start jenkins  ---启动jenkins服务
  • 浏览器输入 http://ip:8080

注意!!!

出现启动不成功的问题时,根据提示输入命令查看日志

  • systemctl status jenkins

如果只出现Warning大概率是网络问题,此时会一直处于启动中,只需要漫长等待即可,当浏览器页面更新时,说明你成功了!

如果等待时间过久,可以重启jenkins:

  • systemctl stop jenkins
  • systemctl start jenkins

三、Jenkins启动成功

启动成功后的配置步骤将以图片展示,由于本人已安装chinese插件,所以显示的是中文,刚登录时默认为英文,当你安装对应插件重启后即可呈现中文界面
此处踩坑无数,后面会将出现的重要问题进行总结

1. 查看登录密码

  • vim /var/lib/jenkins/secrets/initialAdminPassword


2. 插件选择


3. 更换镜像站

https://mirrors.tuna.tsinghua.edu.cn/jenkins/
或者
http://updates.jenkins.io/update-center.json

或......

​ 

 


4. 插件安装

安装完成后记得重启jenkins,重启方式见上图


5. node配置

此处将展示两种node配置方式

  • 安装目录配置
  • 自动安装配置

​ 

​ 

 


6. 项目配置 

​ 

 

 

​ 

 shell命令(以前端项目为例):

  1. npm install
    下载工作区npm包
  2. rm -rf ./dist/*
    删除dist目录下的所有文件,dist目录即为当前jenkins工作区打包后的文件
  3. npm run build
    执行打包命令
  4. rm -rf /usr/share/nginx/html/advanced/*
    删除服务器上/usr/share/nginx/html/advanced/ 目录下的所有文件
    该目录为服务器项目放置位置,可自己定义
  5. cp -rf ./dist/* /usr/share/nginx/html/advanced/
    把当前构建工作区dist目录里的文件 copy 到服务器/usr/share/nginx/html/advanced 文件夹下

四、其他问题

1. 出现403

脚本命令行输入命令运行

  • hudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION = true

2. 配置Node时无下拉版本选择

解决方案:

1)找到jenkins下的updates文件夹,可能存在于

  • /var/jenkins_home/updates
  • /var/lib/jenkins/updates

注:

先cd进入根目录  再cd进入以上两个路径
如果以上两个路径都不存在,可使用命令查找服务器上的hudson.plugins.nodejs.tools.NodeJSInstaller文件

  • find / -name 文件名称

如果找不到updates文件夹和hudson.plugins.nodejs.tools.NodeJSInstaller文件,莫着急,另一种解决方案放在最后

2)在文件夹下添加hudson.plugins.nodejs.tools.NodeJSInstaller文件,文件内容可在清华镜像站获取
3)添加后重启jenkins

Index of /jenkins/updates/updates/ | 清华大学开源软件镜像站 | Tsinghua Open Source MirrorIndex of /jenkins/updates/updates/ | 清华大学开源软件镜像站,致力于为国内和校内用户提供高质量的开源软件镜像、Linux 镜像源服务,帮助用户更方便地获取开源软件。本镜像站由清华大学 TUNA 协会负责运行维护。https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/updates/

当你找不到updates文件夹或者配置文件重启后依然没有出现下拉框版本选择,恭喜你中奖了这个问题非常诡异,本人调研了大量资料也没能成功解决,最终经过无数次重启系统莫名其妙的出现了!

所以上面给出了两种配置node的方法,当没有版本选择时我们可以通过安装目录自行配置


五、结语

        Jenkins是一个用 Java 编写的开源自动化软件项目。是基于Java开发的一种持续集成工具,用于监控持续重复的工作。Jenkins 用于持续构建和测试软件项目 ,集成了各种开发生命周期过程,包括构建、文档、测试、打包、模拟、部署、静态分析等等。

        Jenkins可以将工程构建到多台机器,使我们更好地利用硬件资源,节省时间,也就是说,我们可以通过脚本命令行将我们的项目部署到服务器上,无论是Vue、React、Node还是Java项目

         Jenkins安装之路异常艰辛,此篇文章目的是希望可以帮助想通过jenkins实现自动构建并部署项目的同学,大坑已填平,如安装过程有任何疑问或遇到文章未提及的奇葩问题,欢迎评论或私信留言~~~

        制作不易,如有帮助一二,记得一键三连哦~~ 😁💖🤞  salute

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐