Antifrag

返回

环境搭建#

进入Vmare,打开虚拟机

配置一键启动环境

1

vim ~/.bashrc

#增加如下内容
alias dps='docker ps --format "table{{.ID}}\t{{.Names}}\t{{.Status}}\t{{.Ports}}"'
#保存退出

#生效
source ~/.bashrc
shell

访问http://192.168.150.101:10880/

image-20240701152638944

配置本机hosts#

2

192.168.150.101 git.sl-express.com
192.168.150.101 maven.sl-express.com
192.168.150.101 jenkins.sl-express.com
192.168.150.101 auth.sl-express.com
192.168.150.101 rabbitmq.sl-express.com
192.168.150.101 nacos.sl-express.com
192.168.150.101 neo4j.sl-express.com
192.168.150.101 xxl-job.sl-express.com
192.168.150.101 eaglemap.sl-express.com
192.168.150.101 seata.sl-express.com
192.168.150.101 skywalking.sl-express.com
192.168.150.101 api.sl-express.com
192.168.150.101 admin.sl-express.com
shell

打开浏览器测试

image-20240701153057560

名称地址用户名/密码端口
githttp://git.sl-express.com/sl/sl12310880
mavenhttp://maven.sl-express.com/nexus/admin/admin1238081
jenkinshttp://jenkins.sl-express.com/root/1238090
权限管家http://auth.sl-express.com/api/authority/static/index.htmladmin/1234568764
RabbitMQhttp://rabbitmq.sl-express.com/sl/sl32115672
MySQL-root/1233306
nacoshttp://nacos.sl-express.com/nacos/nacos/nacos8848
neo4jhttp://neo4j.sl-express.com/browser/neo4j/neo4j1237474
xxl-jobhttp://xxl-job.sl-express.com/xxl-job-adminadmin/12345628080
EagleMaphttp://eaglemap.sl-express.com/eagle/eagle8484
seatahttp://seata.sl-express.com/seata/seata7091
Gatewayhttp://api.sl-express.com/-9527
adminhttp://admin.sl-express.com/-80
skywalkinghttp://skywalking.sl-express.com/-48080
Redis-1233216379
MongoDB-sl/12332127017
配置本地MAVEN#

image-20240701154129648

配置本地jdk环境

image-20240701154914165

拉取导入项目

image-20240701160844697

更新MAVEN并运行

image-20240701160927514

访问http://127.0.0.1:18099/doc.html#/home

image-20240701160958249

数据测试

image-20240701161211283

创建分支#

使用git

11

12

创建成功

13

添加测试案例

14

测试成功

15

提交到远程仓库

16

17

可以看到代码已经提交

创建分支release-1.0

完善代码

18

将代码进行提交

19

创建tag并发布

20

21

Jenkins配置#

访问Jenkins,通过root/123登录

进入页面创建任务

任务名称一般为项目名称

image-20240702170320182

填写描述

image-20240702170535472

设置构建参数

image-20240702170628580

版本号设置

image-20240702170644866

服务IP设置

image-20240702170658799

端口设置

image-20240702170712268

服务名称设置

image-20240702170833629

Git源码路径、账号、分支设置

image-20240702170922389

SSH连接地址、权限提升以及Maven版本设置

image-20240702170958123

Shell命令执行

image-20240702171041934

保存后开始构建

image-20240702171224810

运行完成后测试:http://192.168.150.101:18099/doc.html#/home

image-20240703144256543

可以看到页面成功展示了

自动构建#

想要实现代码推送到git中自动开始构建,需要分别到gogs和Jenkins中进行设置

gogs设置

http://git.sl-express.com/sl/sl-express-gitflow-web页面点击右上角仓库设置

选择管理Web钩子

添加gogs钩子

image

在Jenkins中也要设置钩子

进入配置

将Password设置为sl123与gogs中一致

image-20240703150058328

在git中点击测试推送

看看能否测试成功

image-20240703145630579

image-20240703150234941

业务实现#

验证码功能#

登录 git 服务,找到 sl-express-ms-web-manager 工程,拉取代码

验证码的实现方式有很多种,项目中我们通过hutool工具包中的验证码模块来实现

使用自定义验证码来实现

image-20240703165431842

具体实现#

先创建分支develop

具体的业务实现是在com.sl.ms.web.manager.service.AuthService中完成

image-20240703165613131

在Controller中调用Service中的方法:

image-20240703165756274

测试#

可以看到验证码

image-20240703165907670

部署前端#

拉取project-slwl-admin-vue代码

修改.env.production.stu文件,设置前后端交互接口改为本机地址和端口:

image-20240704171035290

提交到git中,使用Jenkins部署

选择develop分支,开始构建

image-20240704171130051

访问地址进行测试:http://admin.sl-express.com/

image-20240704171240463

可以看到请求为200

image-20240704171414493

登录功能实现#

AuthServiceImpl中完善代码

image-20240704174459771

image-20240704174515533

Controller中调用:

image-20240704174750039

测试#

可以看到测试有数据

image-20240704174842874

权限管家#

权限管家使用说明

改造登录接口为权限管家的接口

image-20240705150255954

测试

可以看到测试成功

image-20240705150518581

环境搭建
https://antifrag.cn/blog/sl
作者 l6kmw
发布于 2024年7月5日