首页
/ ReportPortal在MacOS M4芯片上的Docker部署问题分析

ReportPortal在MacOS M4芯片上的Docker部署问题分析

2025-07-07 23:32:47作者:廉彬冶Miranda

问题背景

最近有用户反馈在MacOS系统上使用Docker Compose部署最新版ReportPortal时遇到了启动失败的问题。通过分析错误日志,我们发现这实际上是一个与JDK 21相关的兼容性问题。

错误现象

当用户尝试部署时,系统主要报出两类错误:

  1. Java虚拟机崩溃:错误日志显示JVM在原生代码中崩溃,并生成了hs_err_pid1.log文件。关键错误信息表明加载hsdis库失败,且崩溃发生在JVM外部。

  2. RabbitMQ连接问题:RabbitMQ服务报告无法找到名为"analyzer"的虚拟主机(vhost),导致AMQP连接被拒绝。

根本原因

经过深入分析,确定问题的核心在于:

  • JDK 21在Apple M4芯片上存在已知的兼容性问题,这导致了JVM崩溃
  • 由于API服务无法正常启动,RabbitMQ服务无法完成预期的虚拟主机配置,从而引发了后续的连接错误

解决方案验证

用户尝试了以下两种解决方案:

  1. 降级方案:使用ReportPortal 5.7.4版本可以正常工作,因为该版本使用的是较旧的JDK版本,不存在M4芯片的兼容性问题。

  2. 官方更新:ReportPortal团队已经发布了针对此问题的修复版本:

    • reportportal/service-api:5.13.3
    • reportportal/service-authorization:5.13.1
    • reportportal/service-jobs:5.13.1

技术建议

对于MacOS M系列芯片用户,我们建议:

  1. 如果必须使用最新版本,请更新docker-compose.yml文件中上述服务的版本号
  2. 如果时间允许,可以考虑等待JDK官方修复此兼容性问题
  3. 作为临时解决方案,5.7.4版本可以在M系列芯片上正常工作

总结

这个问题展示了硬件架构变化对软件生态的深远影响。随着Apple Silicon的普及,开发者需要更加关注跨平台兼容性问题。ReportPortal团队已经快速响应并提供了解决方案,体现了开源社区的高效协作精神。

登录后查看全文

项目优选

收起
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
471
466
kernelkernel
deepin linux kernel
C
32
16
atomcodeatomcode
Claude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get Started
Rust
2.09 K
218
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
700
1.4 K
docsdocs
暂无描述
Dockerfile
780
5.08 K
pytorchpytorch
Ascend Extension for PyTorch
Python
758
968
flutter_flutterflutter_flutter
本仓库是 Flutter SDK 与 Flutter Engine 的 OpenHarmony 适配版本,由 CPF-Flutter 团队维护。开发者可使用熟悉的 Flutter 技术栈开发 OpenHarmony 应用,3.35.7 及以后的适配版本可基于本仓库源码构建支持 OpenHarmony 的 Flutter Engine。
Dart
1.04 K
271
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
880
2.03 K
mindquantummindquantum
MindQuantum is a general software library supporting the development of applications for quantum computation.
Python
183
112
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
1.11 K
682