文章目录
- 一、Jenkins+Docker+SpringCloud持续集成流程说明
- 二、SpringCloud微服务源码概述
- 三、本地部署SpringCloud微服务部署
- 1、逐一启动微服务
- 2、本地数据库导入
- 3、安装postman工具
- 4、idea环境中打包eureka的jar
- 5、本地部署前端静态
一、Jenkins+Docker+SpringCloud持续集成流程说明
大致流程说明:
1)开发人员每天把代码提交到gitlab代码仓库中
2)Jenkins从gitlab中拉取项目源码,编译并打包成jar包,然后构建成docker镜像,将镜像上传到harbor私有仓库
3)Jenkins发送SSH远程登陆,让生产部署服务器到harbor私有仓库拉去镜像到本地,然后创建容器
4)用户访问容器
二、SpringCloud微服务源码概述
项目架构:前后端分离
后端技术栈:SpringBoot+SpringCloud+SpringDataJpa(Spring全家桶
微服务项目结构
tensquare_parent:父工程,存放基础配置
tensquare_common:通用工程,存放工具tensquare_eureka_server;
SpringCloud的Eureka注册中心
tensquare_zuul:SpringCloud的网关服务
tensquare_admin_service:基础权限认证中心,负责用户认证(使用JWT认证)
tensquare_gathering:一个简单的业务模块,活动微服务相关逻辑
数据库结构
tensquare_user:用户认证数据库,存放用户账户数据。对应tensquare_admin_service微服务
tensquare_gathering:活动微服务数据库。对应tensquare_gathering微服务
微服务配置分析
tensquare_eureka
tensquare_zuul
tensquare_admin_service
tensquare_gathering
三、本地部署SpringCloud微服务部署
1、逐一启动微服务
将文件放在C盘idea的目录下>点击file----open—选择tenquare_parent文件
生成新的页面—此时,若缺少依赖组件,原因是本地没有maven文件,则无法下载微服务项目
maven官网:https://maven.apache.org/download.cgi
解压目录
将文件放置于C盘下
添加变量
C:\apache-maven-3.8.4-bin\apache-maven-3.8.4\conf
//配置组建仓库地址<localRepository>E:/repo</localRepository>
//配置下载源
<mirror>
<id>aliyunmaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
进入idea
记得重启IDEA,否则idea无法识别maven,重启后,自动更新
解决SpringBoot启动类报错:can not resolve method 'run(java.lang.class.string[])'问题
清除内存
测试是否安装成功----运行tensquare_eureka,若无报错,则成功
配置文件修改为单机版本微服务-----启动eureka----进入eureka_server
# 单机版
server:
port: 10086
#基本服务器信息
spring:
application:
name: eureka-server #服务ID
#enreka服务器配置
eureka:
client:
fetch-registry: false #单机版关闭enreka相互注册
register-with-eureka: false
service-url:
defaultZone: http://localhost:${server.port}/eureka #暴露eureka服务访问地址
server:
enable-self-preservation: false #关闭自我保护
进入tensquare_zuul
进入admin_service
进入tensquare_gathering
2、本地数据库导入
安装mysql5.7
创建两个数据库
create database tensquare_gathering;/tensquare_user;
source c:/tensquare_gathering.sql;/tensquare_user.sql;
3、安装postman工具
运行并打开
如果出现500错误,请重刷新send,即可登陆
获取token
复制到文本中
4、idea环境中打包eureka的jar
mvn clean package
在底层写入mvn clean package
报错:原因没有配置jdk目录
<build>
<plugins>
<plugin>
<!--提供打包(将应用打包成可执行的jar包)-->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<!-- 指定maven编译的jdk版本 -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<verbose>true</verbose>
<fork>true</fork>
<!--jdk地址-->
<executable>C:/Program Files/Java/jdk1.8.0_152/bin/javac</executable>
</configuration>
</plugin>
</plugins>
</build>
在target目录中生成jar包
本地运行微服务的jar包
打开CMD---->进入C盘,在C盘下直接CMD
5、本地部署前端静态
web网站-----NodeJS+VueJS+ElementUI
1、安装nodejs
npm install -g cnpm --registry=https://registry.npm.taobao.org
使用cmd切换到tensquareAdmin目录下执行cnpm uninstall node-sass
再执行cnpm install node-sass
最后执行:cnpm run dev 成功