1 离线包安装,如何引用 Python3 第三方依赖包?
注意
Python3 引用第三方依赖包有【挂载本地目录】方式。
挂载本地目录
MeterSphere 里内嵌的 Python3 是 Python3.10,因此需要先在部署的环境里,先安装 Python3.10
# 安装python3.10apt update && sudo apt upgrade -yapt install software-properties-common -yadd-apt-repository ppa:deadsnakes/ppaapt install python3.10# 安装虚拟环境apt install -y python3.10-venv# 创建一个目录用于python虚拟环境mkdir /root/.venvcd /root/.venvpython3 -m venv .source bin/activate# 安装三方包pip install requestspip install pinyin
配置 task-runner 的目录挂载 /root/.venv/lib/python3.10/site-packages:/usr/local/lib/python3.10/site-packages
配置完成后执行 msctl reload,服务启动后就可以在 Python3 脚本中直接使用三方包了
2 在线一键安装,如何引用 Python3 第三方依赖包?
宿主机的 Python3 环境已安装 requests 模块,执行 pip show requests 找到 Python3 环境的路径
- 通过 docker run 命令一键安装 MeterSphere,需要添加 -v 参数,将宿主机 Python3 环境映射到容器内部
- 执行命令【docker run -d -p 8081:8081 —name=metersphere -v ~/.metersphere/data:/opt/metersphere/data -v /usr/local/python3/lib/python3.10/site-packages:/usr/local/python3/lib/python3.10/site-packages metersphere/metersphere-ce-allinone】
在【项目管理-公共脚本】处添加如下代码,进行测试,在执行结果页面,正常输出请求成功响应体。
3 本地执行检测,出现 “网络异常,请检查您的网络连接是否正常”
配置 localhost 异常
【个人执行-本地执行】配置http://localhost:8000,页面报“网络异常,请检查您的网络连接是否正常”
在 Chrome 浏览器上访问【chrome://flags/#block-insecure-private-network-requests】将该项设置为【disabled】,重启浏览器即可
若是 Edge 浏览器,则输入【edge://flags】后,搜索【block-insecure-private-network-requests】将其设置【disabled】
点击【检测并保存】即可检测通过
配置本地IP异常
【本地执行】配置http://本地IP:8000 则会出现如下的跨域问题。
在 Chrome 浏览器上访问【chrome://settings/】后,点击【隐私和安全-网站设置-更多内容设置-不安全内容-允许显示不安全内容-添加】
添加 MeterSphere 平台域名后,点击小三角后,在”不安全内容”处设置”允许”
若是 Edge 浏览器,则输入【edge://settings】后,搜索【不安全内容】后,点击不安全内容,添加 MeterSphere 平台域名即可
点击【检测并保存】即可检测通过
4 资源池无法访问当前站点
问题现象
【接口测试】执行请求时,页面提示”资源池无法访问当前站点”
解决方法
【系统设置-系统-资源池】编辑页面,工作节点 URL 填写为 MeterSphere 服务地址,该地址与 task-runner 容器服务之间网络要通。

