jenkins 自动化部署前端项目

3,381 阅读4分钟

什么是Jenkins,它能做什么

Jenkins是一款开源 CI(持续集成)、CD(持续交付|持续部署) 软件,它可以帮助开发者控制部署过程和自动化构建,保证 一致性(系统、环境、版本)、独立性(组件包、共享库)、时效性(手动设置,费时费力)、正确性(人不同于机器,机器的最大的优点就是完全按照指令执行),易维护且控制版本,把这些繁琐的过程都交给Jenkins处理,让开发者从这有更多精力去关注更高级的任务。

安装

环境 ubuntu

确保已有java环境 没有话 要先安装java 环境

sudo apt install openjdk-11-jdk

下载安装 Jenkins时 要 先添加密钥

    
  curl -fsSL https://pkg.jenkins.io/debian/jenkins.io-2023.key | sudo tee \
    /usr/share/keyrings/jenkins-keyring.asc > /dev/null
  

添加 Jenkins apt 存储库条目

    
  echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \
    https://pkg.jenkins.io/debian binary/ | sudo tee \
    /etc/apt/sources.list.d/jenkins.list > /dev/null
  

更新本地包索引,然后开始安装 Jenkins

   
  sudo apt-get update
  sudo apt-get install jenkins

TODO 如果一次性安装成功,说明你的运气好到极了,失败也不用着急,可能官方的密钥、源有所更新, 查看这里,如下图所示

image.png

运行配置

执行运行命令

systemctl start jenkins

浏览器 访问 ip:8080

image.png

管理员密码,在服务器目录 输入以下命令查看 输入密码后点继续

cat /var/lib/jenkins/secrets/initialAdminPassword 

image.png

image.png

选择安装推荐的插件就可以

image.png

报错处理

一般情况下会报错,如果没报,忽略这个步骤

image.png

修改config.xml

#修改时做好备份
cp  /var/lib/jenkins/config.xml  /var/lib/jenkins/config.xml.bak
 vim /var/lib/jenkins/config.xml

修改第10行 <useSecurity>true</useSecurity> 修改为:<useSecurity>false</useSecurity>
删除这两个标签及标签内的所有内容 <authorizationStrategy …/>和<securityRealm …>到</securityRealm>

修改完后重新执行命令,这是密码已换,记得重现查看下密码

systemctl start jenkins

继续选择 安装推荐的插件 等待安装我弄成就行 image.png

等待插件安装完成后 按照提示设置账号密码

image.png

正常页面就长这个样子了 image.png

配置nginx服务

依次执行以下命令

sudo apt update
sudo apt install nginx
sudo systemctl status nginx

安装成后,访问域名或ip 出现以下页面说明运行成功 image.png

配置 修改默认目录文件

/etc/nginx/sites-available
vim default

将文件中 root /var/www/html; 改为 root /var/www/test;

重启nginx 服务

nginx -s reload

另外需要确保 www目录的操作权限

cd /var/
chmod -R  777 www

创建自己的第一个前端自动化部署项目

下载node插件

因为打包会需要node 环境 所以要先下载对应插件 如下图 点击 Manage Jenkins -> Available plugins 搜索对应插件 image.png

image.png

image.png

找到Node.js 点击下载 image.png Download progress 拖到最下面查看进程,点击重启 image.png

image.png

点击全局工具配置

image.png

找到新增 NodeJs 设置好版本,这里可以设置多个版本 image.png

新建任务

首页找到新建任务,设置任务名称

image.png

设置git仓库地址,指定分支

TODO (如果 仓库是私有的,还要设置密钥或账号密码,这个我后期文章中会详细介绍)

image.png

image.png

设置 构建环境,选择node 版本

image.png 配置 shell 命令脚本 保存

cd /var/lib/jenkins/workspace/test
npm install --registry=https://registry.npm.taobao.org
npm run build:prod
cp -r dist /var/www/test

image.png 然后执行 立即构建,下方会出现构建任务,出现绿色对勾标识,表示构建完成

image.png

点击任务详情-> 控制台输出,可以看到输出日志记录

image.png

浏览器访问 ip地址 正常访问出现以下页面,到此已完成前端项目的简单自动化配置部署 image.png

构建时遇到的问题总结

安装 Jenkins 失败问题

应该是官方更新了最新的源,建议去官网查看最新的安装文档 点击这里

node版本问题

Error: error:0308010C:digital envelope routines::unsupported

设置对应稳定node版本就行了

目录权限问题

cp: cannot create directory '/var/www/test': Permission denied

改变www目录操作权限

chmod -R 777 www

都看到这了,还不给个 一键三连(点赞、关注、加收藏)

图片.png

也欢迎评论区留言哦