MeterSphereV2.3版本Mac本地启动详细教程(含常见错误)(二)

这篇具有很好参考价值的文章主要介绍了MeterSphereV2.3版本Mac本地启动详细教程(含常见错误)(二)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、准备工作

  1. 因为代码是java语言写的,所以提前准备好java的环境
  2. JDK11 :https://www.oracle.com/java/technologies/javase/jdk11-archive-downloads.html
  3. maven(3.6.2以上都行):https://archive.apache.org/dist/maven/maven-3/
  4. git安装
  5. mac安装nodejs和npm:https://www.cnblogs.com/aspirant/p/15875878.html
  6. docker安装 (推荐v20.10):https://www.docker.com/products/docker-desktop/
  7. mysql安装:https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.30-macos12-x86_64.dmg
  8. redis安装:https://blog.csdn.net/yinjl123456/article/details/118977360
  9. minio安装:https://blog.csdn.net/sinat_29356635/article/details/127068778
  • 以上环境根据自己电脑系统安装即可。
  • 环境已准备好,请忽略。

二、下载代码

代码地址:https://github.com/metersphere/metersphere/tree/v2.3
需要拉取服务为:

  1. metersphere
  2. ms-jmeter-core
  3. jmeter-plugins-webdriver

三、Mac版本启动

3.1 启动前准备

参考官网把mysql,redis,还有metersphere.properties 分别准备好。(注意:windows系统注意metersphere.properties 的位置。类似:D:\opt\metersphere\conf\metersphere.properties)
https://metersphere.io/docs/v2.x/dev_manual/

V2.3. 版本做了微服务改造,目录结构区别还是蛮大的。

.
├── Jenkinsfile                                     # 构建JAR包使用的 jenkinsfile
├── LICENSE
├── OWNERS
├── README.md                                       # 项目中文介绍
├── README-EN.md                                    # 项目英文介绍
├── SECURITY.md                                     # 安全说明
├── CODE_OF_CONDUCT.md                        
├── CONTRIBUTING.md 
├── build.md                                        # 构建过程
├──framework                                          
│   ├── eureka                                       # 服务注册中心
│   ├── gateway                                      # API 网关
│   ├── sdk-parent                                   # SDK
│   ├── .gitignore                                    
│   └── pom                                          # 主框架的 pom 文件           
├──test-track                                        # 测试跟踪模块
│   ├── backend                                      # 后端代码目录
│   ├── frontend                                     # 前端代码目录
│   ├── Dockerfile                                   # 构建容器镜像使用的 dockerfile
│   └── pom                                          # 测试跟踪模块使用的 pom 文件   
├── api-test                                         # 接口测试模块
│   ├── backend                                      # 后端代码目录
│   ├── frontend                                     # 前端代码目录
│   ├── Dockerfile                                   # 构建容器镜像使用的 dockerfile
│   └── pom                                          # 接口测试模块使用的 pom 文件
├── performance-test                                 # 性能测试模块
│   ├── backend                                      # 后端代码目录
│   ├── frontend                                     # 前端代码目录
│   ├── Dockerfile                                   # 构建容器镜像使用的 dockerfile
│   └── pom                                          # 性能测试模块使用的 pom 文件
├── report-stat                                      # 报表统计模块
│   ├── backend                                      # 后端代码目录
│   ├── frontend                                     # 前端代码目录
│   ├── Dockerfile                                   # 构建容器镜像使用的 dockerfile
│   └── pom                                          # 报表统计模块使用的 pom 文件  
├── project-management                               # 项目管理模块
│   ├── backend                                      # 后端代码目录
│   ├── frontend                                     # 前端代码目录
│   ├── Dockerfile                                   # 构建容器镜像使用的 dockerfile
│   └── pom                                          # 项目管理模块使用的 pom 文件 
├── system-setting                                   # 系统设置模块
│   ├── backend                                      # 后端代码目录
│   ├── frontend                                     # 前端代码目录
│   ├── Dockerfile                                   # 构建容器镜像使用的 dockerfile
│   └── pom                                          # 系统设置模块使用的 pom 文件
├── .gitignore
├── .gitmodules
└── pom.xml                                         # 整体 maven 项目使用的 pom 文件

以上工作都完成之后,我们就开始本地启动了。

3.2 打包依赖

注意:三个项目的maven仓库必须配置一致。如果在打包过程中包依赖找不到问题,就去看下自己的仓库地址是否一致。

因为启动metersphere 需要 一些依赖,所有我们在启动之前先把 ms-jmeter-core 和 jmeter-plugins-webdriver 给 打包一下:

mvn clean install 

3.3 启动metersphere服务

以上依赖都打包好之后,开始执行以下命令,如果打包依赖有问题,请参考下面的问题解决。

在项目根目录下面执行以下命令

    1. 依赖打包
# parent pom 安装到本地仓库, sdk 也进行安装
./mvnw install -N
./mvnw clean install -pl framework,framework/sdk-parent,framework/sdk-parent/domain,framework/sdk-parent/sdk

#  如果是企业版本 需要加上  framework/sdk-parent/xpack-interface

    1. 整体打包
./mvnw clean package

image.png
以上是成功的图片

启动顺序

  1. 先启动eureka
  2. 再启动system-setting (创建数据库的),到这一步 如果可以启动成功,就可以访问页面了。

image.png

  1. 如果要进行多模块联调的话需要启动 gateway 和其他服务
  • 可以通过eureka查看服务信息,注册成功,就可以多模块联调了。

image.png

完整配置文件:

metersphere.properties
# eureka 配置
eureka.client.service-url.defaultZone=http://localhost:8761/eureka/


# 数据库配置
spring.datasource.url=jdbc:mysql://localhost:3306/metersphere2.3?autoReconnect=false&useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false
spring.datasource.username=root
spring.datasource.password=Calong@2015


# kafka 配置,node-controller 以及 data-streaming 服务需要使用 kafka 进行测试结果的收集和处理
kafka.partitions=1
kafka.replicas=1
kafka.topic=JMETER_METRICS
kafka.test.topic=JMETER_TESTS
kafka.bootstrap-servers=127.0.0.1:9092
kafka.log.topic=JMETER_LOGS
kafka.report.topic=JMETER_REPORT

# node-controller 所使用的 jmeter 镜像版本
jmeter.image=registry.cn-qingdao.aliyuncs.com/metersphere/jmeter-master:5.5-ms1-jdk11

# TCP Mock 端口范围
tcp.mock.port=10000-10010

# Redis 配置
spring.redis.host=localhost
spring.session.store-type=redis
spring.redis.port=6379
spring.redis.password=Password123@redis


# 启动模式,lcoal 表示以本地开发模式启动
run.mode=local

# minio 配置
minio.endpoint=http://localhost:9000
minio.accessKey=minioadmin
minio.secretKey=minioadmin

## CAS
#cas.client.name=MS_SERVER
## CAS SERVER URL
#cas.server.url=http://xxx/cas
## METERSPHERE SERVER URL
#as.client.url=http://IP:8081    
mysql
[mysqld]
datadir=/var/lib/mysql

default-storage-engine=INNODB
character_set_server=utf8mb4
#lower_case_table_names=1  --> mysql8 初始化的时候带上
performance_schema=off
table_open_cache=128
transaction_isolation=READ-COMMITTED
max_connections=1000
max_connect_errors=6000
max_allowed_packet=64M
innodb_file_per_table=1
innodb_buffer_pool_size=512M
innodb_flush_method=O_DIRECT
innodb_lock_wait_timeout=1800

server-id=1
log-bin=mysql-bin
expire_logs_days = 2
binlog_format=mixed

character-set-client-handshake = FALSE
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
init_connect='SET default_collation_for_utf8mb4=utf8mb4_general_ci'

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

skip-name-resolve

[mysql]
default-character-set=utf8mb4

[mysql.server]
default-character-set=utf8mb4

3.4 总结

  1. 准备好自己的环境
  2. 拉取metersphere代码,项目根目录下执行 ./mvnw install -N
  3. 拉取ms-jmeter-core和jmeter-plugins-webdriver 并且执行 mvn clean install
  4. metersphere 根目录下执行:
./mvnw clean install -pl framework,framework/sdk-parent,framework/sdk-parent/domain,framework/sdk-parent/sdk
  1. metersphere 根目录下执行:./mvnw clean package 打包跟网络和电脑自身的资源配置有关系(大约30min~2h)

以上就是源码启动MeterSphereV2.3微服务架构版本的方法,如有问题,欢迎指正。

四、常见遇到的问题

4.1 启动gateway 报错:“redis.ReactiveRedisSessionRepository” that cloud not be found.

  • 问题:是因为metersphere.properties 少了配置

image.png

  • 解决:

image.png
在metersphere.properties 添加以上配置即可。

4.2 启动服务模块报错:Error creating bean with name ‘minIOFileRepository’

  • 问题:

image.png

image.png

  • 解决:

是因为metersphere.properties 没有配置minio

image.png
添加以上配置:
参考:https://blog.csdn.net/sinat_29356635/article/details/127068778
http://docs.minio.org.cn/docs/master/minio-docker-quickstart-guide
https://blog.csdn.net/weixin_43888891/article/details/122021704

4.3 打包ms-jmeter-core报错 “Could not find artifact io.metersphere:meterspere:pom:2.3 ”

  • 问题

image.png

  • 解决:

以上问题是因为,没有找到对应的依赖,在mvn clean install ms-jmeter-core 项目之前 ,需要在metersphere项目主目录下面,执行 ./mvnw install -N
即:
image.png

然后再去ms-jmeter-core 项目下面执行 mvn clean install

4.4 打包ms-jmeter-core 报错Could not find “jmeter-plugins-webdriver:jar:3.4.4”

  • 问题

image.png

  • 解决

是因为没有“jmeter-plugin-webdriver”依赖包,
直接去Github仓库:https://github.com/metersphere/jmeter-plugins-webdriver下载,注意分支要跟metersphere版本一致。
直接执行mvn clean install

4.5 打包ms-jmeter-core报错"org.apache.commons.lang"不存在

  • 问题

image.png

  • 解决

在项目ms-jmeter-core的pom.xml文件里面添加

<dependency>
  <groupId>commons-lang</groupId>
  <artifactId>commons-lang</artifactId>
  <version>2.5</version>
</dependency>

4.6 启动gateway报错:”UnkonwHostException“

  • 问题

image.png

  • 解决

是因为配置文件地址不对。修改metersphere.properties 文件
image.png

4.7 启动system-setting 报错"which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by" mysql5.7

  • 问题:

image.png文章来源地址https://www.toymoban.com/news/detail-416513.html

  • 解决:
  1. 先查出来所有的sql_mode
select @@global.sql_mode;

  1. 然后把only_full_group_by去掉,再更新一下。
set @@global.sql_mode = "STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"

到了这里,关于MeterSphereV2.3版本Mac本地启动详细教程(含常见错误)(二)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Mac本地部署Stable Diffusion,超详细,含踩坑点(AI 绘画保姆级教程)

    相继在两个云平台 Kaggle 和 AutoDL 上部署了 Stable Diffusion 后,这周决定再在 Mac 本地部署一下 Stable Diffusion! 其实看 Stable Diffusion WebUI 的 Github 官网,步骤还是比较清晰简单的。 但实际部署过程中,确实还是遇到了不少问题,所以顺便将踩过的坑一一记录了下来,应该涵盖了大

    2024年02月11日
    浏览(23)
  • Mac Docker安装配置nginx,配置代理前端访问服务器后端访问本地启动项目

     或者直接通过docker客户端查看 --name NginxTest:容器名称 -p 8080:8080:映射端口 -d nginx:设置容器后台运行  docker客户端查看 1)全局块:配置服务器整体运行的配置指令 nginx 服务器整体运行的配置指令,主要包括配置运行 Nginx 服务器的用户(组)、允许生成的 worker process 数,

    2024年02月02日
    浏览(35)
  • Mac电脑本地安装Stable Diffusion小白教程避开所有坑教程

          CP U可为 intel 或M芯片。特别说明github拉取代码时需要魔法上网,所以尽量全程开启魔法上网。本教程所用系统为macOs venture 13.6.4。 启动“终端”        按下“command+空格”按钮,输入终端,如下图所示,点击即可启动终端。 安装“HomeBrew” 输入指令: /bin/zsh -c \\\"$

    2024年04月17日
    浏览(17)
  • 保姆级教程!奶奶都能学会的Mac本地部署Stable Diffusion教程

    举一个简单的例子,Midjourney和Stable diffusion在照片处理领域就好比是“美图秀秀”和“PS”;在短视频制作领域,就好比是“剪映”和“PR”。 这样说是不是更容易理解了,如果你是新手只想单纯的体验AI绘图的乐趣可以尝试Midjourney,网上有很多,输入即可出图了

    2024年04月10日
    浏览(53)
  • 最新版本Git2.39.2.0-64位最新版本详细安装步骤(本地环境配置)

    文章目录 一、到Git官网下载所需版本 ​二、Git的安装 三、本地环境的配置 一、到[Git官网]下载所需版本,下载慢可以使用Windows镜像下载 https://git-scm.com/downloads https://git-scm.com/downloads CNPM Binaries Mirror (npmmirror.com) https://registry.npmmirror.com/binary.html?path=git-for-windows/         1、

    2023年04月16日
    浏览(20)
  • 【解决】mysql本地计算机上的MySQL服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止。启动好后,数据1146问题,找不到表(windows版本,免安装版本)

    环境:mysql5.7.13(免安装版本) 第一个问题:mysql本地计算机上的MySQL服务启动后停止 解决方式一:重启服务器(以前成功过,可能是Windows服务器的原因) 解决方式二: 1.清空 data 文件夹,记得备份 2.cmd 进入mysql的bin目录 执行初始化命令:mysqld --initialize 等待几秒钟,没报错就

    2024年02月15日
    浏览(20)
  • [超详细]MySQL本地版本升级(从5.5.20到8.0.21)

    写在前面 升级本地mysql,当前5.5.20,升级前先备份本地的数据库文件 以防数据丢失 一、卸载本地的旧版本 1. 停止MySQL服务 win+R 打开运行,输入 services.msc 点击 \\\"确定\\\" 调出系统服务。  2. 卸载MySQL相关组件 打开控制面板 --- 卸载程序 --- 卸载MySQL相关所有组件  3. 删除MySQL安装

    2024年02月04日
    浏览(10)
  • notion 3.0.0 版本最新桌面端汉化教程,支持MAC和WIN版本

    最近notion桌面端更新了3.0.0版本后会导致老版本汉化失效,本项目实现了最新版Notion桌面端的汉化。 文件下载地址:汉化文件下载地址 本项目针对新的客户端做了汉化文化,依托的依然是 notion-zh_CN.js 。 因我这边只有 mac M系列 和 win 的电脑,3.0.0桌面端未做 mac intel 的汉化文

    2024年02月05日
    浏览(16)
  • MAC 安装 nacos详细教程

    目录 一、什么是 Nacos 二、Nacos的主要特点 三、安装步骤  1、通过官网访问gitHub (官网地址:home) ​编辑2、点击前往GitHub(View on Github) 3、找到 readme.md 文件README.md 4、点击 下载最新稳定版本。​编辑 5、滑倒最下面展开ASSets列表, 点击zip包进行下载 6、解压后进入bin目录

    2024年03月10日
    浏览(29)
  • Mac 安装Nginx详细教程

    本文介绍一下,如何在Mac系统中安装Nginx,把详细过程记录下来,方便以后查看,也方便大家学习。 1、 安装 Homebrew homebrew是什么?它是Mac中的一款软件包管理工具,通过brew可以很方便的在Mac中安装软件或者是卸载软件。不了解的同学看以看官网(brew.sh/index_zh-cn…), 然后在我

    2024年02月08日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包