如何在Linux部署MeterSphere并实现公网访问进行远程测试工作
文章目录
- 前言
- 1. 安装MeterSphere
- 2. 本地访问MeterSphere
- 3. 安装 cpolar内网穿透软件
- 4. 配置MeterSphere公网访问地址
- 5. 公网远程访问MeterSphere
- 6. 固定MeterSphere公网地址
前言
MeterSphere 是一站式开源持续测试平台, 涵盖测试跟踪、接口测试、UI 测试和性能测试等功能,全面兼容 JMeter、Selenium 等主流开源标准,有效助力开发和测试团队充分利用云弹性进行高度可扩展的自动化测试,加速高质量的软件交付,推动中国测试行业整体效率的提升。
下面介绍在Linux 中部署MeterSphere 并且结合cpolar 内网穿透实现远程也可以访问MeterSphere 界面!
1. 安装MeterSphere
以 root 用户执行如下命令一键安装 MeterSphere,如果设备中安装了docker 和docker compose,则会默认以docker方式安装
curl -sSL https://resource.fit2cloud.com/metersphere/metersphere/releases/latest/download/quick_start.sh | bash
安装成功后,我们可以看到如下信息,访问方式URL,端口号:8081 ,还有用户名和初始化密码,需要把这些信息记住

2. 本地访问MeterSphere
安装后,我们通过默认的web 界面端口8081在浏览器中访问web 界面,或者在外部的设备通过局域网方式加8081端口访问,可以看到,本地访问成功,下面我们安装cpolar 实现远程访问

上面说到如果设备中安装了docker 和docker compose会默认按docker方式安装 ,现在我们打开docker images 和docker pa -a 可以看到,MeterSphere是以docker方式运行,所以我们,停止或者启动我们都可以在docker中操作

3. 安装 cpolar内网穿透软件
上面我们在本地Linux中安装和启动了MeterSphere 服务,并且本地访问ok,下面我们在Linux安装cpolar内网穿透工具,通过cpolar的http公网地址,我们可以很容易实现远程访问MeterSphere ,而无需自己注册域名购买云服务器.下面是安装cpolar步骤
cpolar官网地址: https://www.cpolar.com
- 使用一键脚本安装命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
- 向系统添加服务
sudo systemctl enable cpolar
- 启动cpolar服务
sudo systemctl start cpolar
cpolar安装成功后,在外部浏览器上访问Linux 的9200端口即:【http://局域网ip:9200】,使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 界面配置即可

4. 配置MeterSphere公网访问地址
点击左侧仪表盘的隧道管理——创建隧道,创建一个我们上面http访问方式的8081端口的cpolar隧道!
- 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
- 协议:选择http
- 本地地址:8081 (默认端口)
- 域名类型:免费选择随机域名
- 地区:选择China vip
点击创建

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https

5. 公网远程访问MeterSphere
使用上面的https公网地址在任意设备的浏览器访问,即可成功看到我们MeterSphere 服务登录管理界面,这样一个公网地址且可以远程访问就创建好了,新地址访问,可能需要重新登录.

6. 固定MeterSphere公网地址
由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化【ps:cpolar.cn已备案】
注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】
登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称

保留成功后复制保留成功的二级子域名的名称

返回登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的MeterSphere隧道,点击右侧的编辑

修改隧道信息,将保留成功的二级子域名配置到隧道中
- 域名类型:选择二级子域名
- Sub Domain:填写保留成功的二级子域名
点击更新(注意,点击一次更新即可,不需要重复提交)

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名

最后,我们使用固定的公网地址访问MeterSphere服务,可以看到出现登录界面,表示访问成功,这样一个固定且永久不变的公网地址就设置好了

输入用户名和密码即可登录
我们使用固定的公网地址访问MeterSphere服务,可以看到出现登录界面,表示访问成功,这样一个固定且永久不变的公网地址就设置好了
输入用户名和密码即可登录

相关文章:
如何在Linux部署MeterSphere并实现公网访问进行远程测试工作
文章目录 前言1. 安装MeterSphere2. 本地访问MeterSphere3. 安装 cpolar内网穿透软件4. 配置MeterSphere公网访问地址5. 公网远程访问MeterSphere6. 固定MeterSphere公网地址 前言 MeterSphere 是一站式开源持续测试平台, 涵盖测试跟踪、接口测试、UI 测试和性能测试等功能&am…...
postgis导入shp数据时“dbf file (.dbf) can not be opened.“
作者进行矢量数据导入数据库中出现上述报错 导致报错原因 导入的shp文件路径太深导入的shp文件名称或路径中有中文将需要导入数据的shp 文件、dbf 文件、prj 等文件放在到同一个文件夹内,且名字要一致;导入失败: 导入成功:...
StarUML笔记之从C++代码生成UML图
StarUML笔记之从C代码生成UML图 —— 2024-04-14 文章目录 StarUML笔记之从C代码生成UML图1.安装C插件2.准备好一个C代码文件放某个路径下3.点击Reverse Code选择项目文件夹4.拖动(Class)到中间画面可以形成UML5.另外一种方式:双击Type Hierarchy,然后…...
sizeof()和strlen
一、什么是sizeof() sizeof()是一个在C和C中广泛使用的操作符,用于计算数据类型或变量所占内存的字节数。它返回一个size_t类型的值,表示其操作数所占的字节数。 在使用时,sizeof()可以接收一个数据类型作为参数,也可以接收一个…...
Python学习笔记13 - 元组
什么是元组 元组的创建方式 为什么要将元组设计为不可变序列? 元组的遍历...
[leetcode]remove-duplicates-from-sorted-list-ii
. - 力扣(LeetCode) 给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字 。返回 已排序的链表 。 示例 1: 输入:head [1,2,3,3,4,4,5] 输出:[1,2,5]示例 2&…...
共享内存和Pytorch中的Dataloader结合
dataloader中通常使用num_workers来指定多线程来进行数据的读取。可以使用共享内存进行加速。 代码地址:https://github.com/POSTECH-CVLab/point-transformer/blob/master/util/s3dis.py 文章目录 1. 共享内存和dataloader结合1.1 在init中把所有的data存储到共享内…...
分享 WebStorm 2024 激活的方案,支持JetBrains全家桶
大家好,欢迎来到金榜探云手! WebStorm公司简介 JetBrains 是一家专注于开发工具的软件公司,总部位于捷克。他们以提供强大的集成开发环境(IDE)而闻名,如 IntelliJ IDEA、PyCharm、和 WebStorm等。这些工具…...
Android OOM问题定位、内存优化
一、OOM out of memory:简称OOM,内存溢出,申请的内存大于剩余的内存而抛出的异常。 对于Android平台,广义的OOM主要是以下几种类型 JavaNativeThread 线程数的上限默认为32768,部分华为设备的限制是500通常1000左右…...
棋盘(c++题解)
题目描述 有一个m m的棋盘,棋盘上每一个格子可能是红色、黄色或没有任何颜色的。你现在要从棋盘的最左上角走到棋盘的最右下角。 任何一个时刻,你所站在的位置必须是有颜色的(不能是无色的) ,你只能向上、下、 左、右…...
滑动窗口例题
一、209:长度最小的子数组 209:长度最小的子数组 思路:1、暴力解法:两层for循环遍历,当sum > target时计算子数组长度并与result比较,取最小的更新result。提交但是超出了时间限制。 class Solution {public int minSubArray…...
智过网:注册安全工程师注册有效期与周期解析
在职业领域,各种专业资格认证不仅是对从业者专业能力的认可,也是保障行业安全、规范发展的重要手段。其中,注册安全工程师证书在安全生产领域具有举足轻重的地位。那么,注册安全工程师的注册有效期是多久呢?又是几年一…...
腐蚀Rust 服务端搭建架设个人社区服务器Windows教程
腐蚀Rust 服务端搭建架设个人社区服务器Windows教程 大家好我是艾西,一个做服务器租用的网络架构师也是游戏热爱者。最近在steam发现rust腐蚀自建的服务器以及玩家还是非常多的,那么作为服务器供应商对这商机肯定是不会放过的哈哈哈! 艾西这…...
蓝桥杯备赛:考前注意事项
考前注意事项 1、DevCpp添加c11支持 点击 工具 - 编译选项 中添加: -stdc112、万能头文件 #include <bits/stdc.h>万能头文件的缺陷:y1 变量 在<cmath>中用过了y1变量。 #include <bits/stdc.h> using namespace std;// 错误示例 …...
111111111111
111111111111...
uniapp 卡片勾选
前言 公司的app项目使用的uniapp,项目里有一个可勾选的卡片功能,效果图如下: 找了一圈没找到什么太好的组件,于是就自己简单写了一个,记录一下。避免以后还会用到 代码 <template><view class"card-…...
乐趣Python——文件与数据:挥别乱糟糟的桌面
各位朋友们,今天我们要开启一场非凡的冒险——进入文件操作的世界!你知道吗,在你的电脑里,有一个叫做“文件系统”的迷宫,里面藏着各种各样的文件和文件夹,它们就像是迷宫中的宝藏。但有时候,这…...
docker nginx-lua发送post json 请求
环境准备 dockerfile from fabiocicerchia/nginx-lua:1.25.3-ubuntu22.04 run apt-get -qq update && apt-get -qq install luarocks run luarocks install lua-cjson run luarocks install lua-iconv run luarocks install lua-resty-http后台代理服务准备ÿ…...
阿里面试总结 一
写了这些还是不够完整,阿里 字节 卷进去加班!奥利给 ThreadLocal 线程变量存放在当前线程变量中,线程上下文中,set将变量添加到threadLocals变量中 Thread类中定义了两个ThreadLocalMap类型变量threadLocals、inheritableThrea…...
多线程(49)定义无锁、阻塞、非阻塞和无等待算法
在并发编程中,理解不同的同步策略——无锁(Lock-Free)、阻塞(Blocking)、非阻塞(Non-Blocking)、无等待(Wait-Free)——对于设计高效、健壮的多线程应用至关重要。让我们…...
3大技术创新:重新定义Windows Android生态的工具体验
3大技术创新:重新定义Windows Android生态的工具体验 【免费下载链接】wsa-toolbox A Windows 11 application to easily install and use the Windows Subsystem For Android™ package on your computer. 项目地址: https://gitcode.com/gh_mirrors/ws/wsa-tool…...
人机冲突类型学:基于意义行为原生论与自感痕迹论的系统性分析
人机冲突类型学:基于意义行为原生论与自感痕迹论的系统性分析 摘要:本文旨在构建一种新的人机冲突类型学,其理论基础是岐金兰的“意义行为原生论”与“自感痕迹论”。不同于现有研究从外部功能或伦理原则出发分类冲突,本文提出&am…...
低成本传感器动态校准:SenDaL框架原理与应用
1. 低成本传感器校准的行业痛点与SenDaL解决方案在智能家居和工业物联网领域,我们经常面临一个尴尬的境地:高精度传感器价格昂贵难以大规模部署,而低成本传感器的数据质量又令人担忧。以PM2.5监测为例,专业级β射线传感器的价格可…...
飞蜂窝技术:从概念到5G室内覆盖核心的实战演进
1. 从“未来可期”到“正在爆发”:飞蜂窝技术的十年之约在通信行业里待久了,你总会听到一些技术名词被反复提起,它们像流星一样划过天际,被分析师们预言将“改变一切”,然后……似乎又沉寂了下去。飞蜂窝(F…...
谷歌账户注册改用发短信验证,注重隐私者如何创建新账户成焦点?
谷歌账户注册方式变更 2026年3月8日下午2点20分,anon28387880称谷歌创建新账户时用二维码取代短信验证,自己试过无法再用二维码注册。扫描智能手机二维码会触发手机向谷歌发短信验证手机号。据说这是为安全考虑,能增加钓鱼难度,但…...
如何一次性解决Windows系统DLL缺失问题:VisualCppRedist AIO终极指南
如何一次性解决Windows系统DLL缺失问题:VisualCppRedist AIO终极指南 【免费下载链接】vcredist AIO Repack for latest Microsoft Visual C Redistributable Runtimes 项目地址: https://gitcode.com/gh_mirrors/vc/vcredist 你是否曾经在安装新游戏或软件时…...
泰拉瑞亚地图编辑器TEdit:5步打造专业级游戏世界的终极指南
泰拉瑞亚地图编辑器TEdit:5步打造专业级游戏世界的终极指南 【免费下载链接】Terraria-Map-Editor TEdit - Terraria Map Editor - TEdit is a stand alone, open source map editor for Terraria. It lets you edit maps just like (almost) paint! It also lets y…...
【Instagram内容工业化生产】:ChatGPT + Canva + Notion三件套实战手册(含私有化部署Prompt库下载权限)
更多请点击: https://intelliparadigm.com 第一章:Instagram内容工业化生产的底层逻辑与范式迁移 Instagram内容工业化生产已从个体化、灵感驱动的创作模式,转向数据闭环、模块化协同与AI增强的系统工程。其底层逻辑根植于三重耦合ÿ…...
Go语言轻量级Web框架Tapestry:高性能路由与中间件设计实战
1. 项目概述与核心价值最近在开源社区里,一个名为Tapestry的项目引起了我的注意。它来自开发者 NatsuFox,定位是一个“轻量级、高性能的 Web 框架”。说实话,现在各种语言的 Web 框架多如牛毛,从 Python 的 Flask、Django…...
【Kanzi 资源系统完全笔记】
一、Resource 的类层次结构Kanzi 中所有资源(Resource)都继承自 Object 基类。下图是常见的资源继承体系(根据图片整理):Object└── Resource├── GPUResource # 位于 GPU 显存中的资源(纹理、…...
