在cPanel中安装Apache Superset遇OpenBLAS线程初始化错误求助
解决cPanel环境下Apache Superset运行
superset db upgrade的OpenBLAS线程错误 错误原因
OpenBLAS(numpy依赖的线性代数库)默认会尝试创建大量线程,但cPanel共享主机对单用户的进程数(RLIMIT_NPROC)有严格限制,导致线程创建失败,进而触发numpy加载卡住的问题。
解决步骤
临时生效方案:在运行
superset db upgrade前,先设置环境变量限制OpenBLAS线程数,数值根据主机允许的进程数调整(建议从4、2、1依次尝试):export OPENBLAS_NUM_THREADS=4 superset db upgrade或者直接合并成一条命令:
OPENBLAS_NUM_THREADS=4 superset db upgrade永久生效方案:将环境变量添加到虚拟环境的激活脚本中,确保每次激活虚拟环境都自动应用设置:
- 编辑虚拟环境的activate文件:
/home/user1/virtualenv/venv/3.11/bin/activate - 在文件末尾添加一行:
export OPENBLAS_NUM_THREADS=4 - 保存后重新激活虚拟环境:
source /home/user1/virtualenv/venv/3.11/bin/activate
- 编辑虚拟环境的activate文件:
cPanel环境安装Superset的额外提示
- 始终确保在虚拟环境中执行Superset相关命令,避免污染全局Python环境
- 若使用数据库,可在cPanel的MySQL Databases功能中创建专属数据库和用户,然后修改Superset的
superset_config.py配置文件指定数据库连接 - 启动Superset时需使用非标准端口(共享主机通常限制80/443),例如:
如需通过域名访问,可借助cPanel的Reverse Proxy或Passenger功能完成端口映射superset run -p 12345 --with-threads
内容的提问来源于stack exchange,提问作者Thomas
相关产品推荐
相关产品推荐

