问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

使用Jenkins实现自动化部署

创作时间:
作者:
@小白创作中心

使用Jenkins实现自动化部署

引用
1
来源
1.
https://docs.suteshop.com/docs/shopsuite-java/shopsuite-java-1e45fpsc9cau5

Jenkins的安装及配置

  
JDK1.8
maven3.8.6
NodeJS v16.15.0 +  

Docker环境下的安装

下载Jenkins的Docker镜像:

  
docker pull jenkins/jenkins:lts  

在Docker容器中运行Jenkins:

  
docker run -p 8080:8080 -p 50000:5000 --name jenkins \
-u root \
-v /data/jenkins_home:/var/jenkins_home \
--restart=always \
-d jenkins/jenkins:lts  

Jenkins的配置

运行成功后访问该地址登录Jenkins,第一次登录需要输入管理员密码:http://192.168.0.132:8080/

使用管理员密码进行登录,可以使用以下命令从容器启动日志中获取管理密码:

  
docker logs jenkins  

从日志中获取管理员密码:

选择安装插件方式,这里我们直接安装推荐的插件:

进入插件安装界面,联网等待插件安装:

安装完成后,创建管理员账号:

进行实例配置,配置Jenkins的URL:

点击系统管理->插件管理,进行一些自定义的插件安装:

确保以下插件被正确安装:

  • 根据角色管理权限的插件:Role-based Authorization Strategy

  • 远程使用ssh的插件:SSH plugin

通过系统管理->全局工具配置来进行全局工具的配置,比如maven的配置:

新增maven的安装配置:

在系统管理->系统配置中添加全局ssh的配置,这样Jenkins使用ssh就可以执行远程的linux脚本了:

打包部署SpringBoot应用

将代码上传到Git仓库

有一点需要注意,要将pom.xml中的dockerHost地址改成你自己的Docker镜像仓库地址:

执行脚本准备

将\document\sh\下的脚本文件上传到服务器/data/sh目录下。

给.sh脚本添加可执行权限:

  
cd /data/sh
chmod +x ./*.sh  

windows下的.sh脚本上传到linux上使用,需要修改文件格式,否则会因为有特殊格式存在而无法执行:

  
#使用vim编辑器来修改
vi *.sh
# 查看文件格式,windows上传上来的默认为dos
:set ff 
#修改文件格式为unix
:set ff=unix 
#保存并退出
:wq  

执行.sh脚本,测试使用,可以不执行:

  
./mall-account.sh  

在Jenkins中创建执行任务

首先我们需要新建一个任务:

添加代码管理仓库:

添加自动打包:

  
clean
package -P prod  

打包之后执行归档文件,放到同一个文件夹下方便下载。

单个服务打包:

唯一不同的地方,先下载依赖:注意看截图。

  
clean install -pl mall-common -am
clean
package -P prod  

执行自动打包:Build Now

打包完成到工作空间–targetAll中下载打包完成的jar包。

打包web前端

Vue前端应用的打包需要依赖NodeJS插件,所以我们先安装并配置该插件,然后创建任务来打包部署。

安装NodeJS插件

在系统设置->插件管理中选择安装插件;

搜索NodeJS插件并进行安装;

配置NodeJS插件

在系统设置->全局工具配置中进行插件配置;

选择新增NodeJS,配置好版本号以后,点击保存即可完成设置;

打包admin前端代码

任务执行流程如下:

首先我们需要新建一个任务:

添加代码管理仓库:

在构建环境中把我们的node环境添加进去:

添加一个执行shell的构建,用于将我们的前端代码进行编译打包:

构建脚本如下:

  
# 解决存放在Github上的sass无法下载的问题
SASS_BINARY_SITE=https://npm.taobao.org/mirrors/node-sass/ npm install node-sass
# 将镜像源替换为国内的加速访问
npm config set registry https://mirrors.tencent.com/npm/
# 安装项目依赖
cnpm install
# 项目打包
cnpm run build  

点击保存后,直接在任务列表中点击运行即可完成自动化打包。

打包成功之后可以在工作空间下载打包好的代码:工作空间–》admin

打包PC前端代码

同打包admin前端代码一样的步骤,只需要更换代码库即可。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号