You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

构建含自定义插件的OpenSearch Dashboards生产制品及解决构建报错

解决OpenSearch Dashboards自定义插件构建时的自签名证书链错误及容器化构建指南

一、解决构建时的自签名证书链错误

你执行yarn build --skip-os-packages时遇到的self-signed certificate in certificate chain错误,是构建脚本下载Node.js校验文件时的证书验证问题,常规的NODE_TLS_REJECT_UNAUTHORIZED=0环境变量可能因脚本启动方式未生效,试试以下方案:

方案1:直接在命令前传递环境变量

执行构建时把环境变量直接拼在命令前,确保脚本进程能获取到:

NODE_TLS_REJECT_UNAUTHORIZED=0 yarn build --skip-os-packages

方案2:手动提供校验文件

  1. 手动下载对应Node.js版本的校验文件:https://nodejs.org/dist/v18.19.0/SHASUMS256.txt
  2. 找到OpenSearch Dashboards构建脚本存放校验文件的目录(通常是项目根目录下的.node_builds文件夹,若不存在则新建)
  3. 将下载的SHASUMS256.txt放入该目录,再执行构建命令,脚本会跳过下载步骤直接使用本地文件

方案3:信任代理/自签名证书(适合企业内网环境)

如果是公司代理的自签名证书导致验证失败,将代理证书文件路径通过环境变量传递:

NODE_EXTRA_CA_CERTS=/path/to/your/company-proxy-cert.pem yarn build --skip-os-packages

也可将证书导入系统根证书库,让Node.js默认信任该证书。

二、自定义插件容器化生产构建步骤

解决证书问题后,按以下步骤完成容器化:

  1. 集成插件到源码:将你的自定义插件放入OpenSearch Dashboards项目的plugins目录,或通过yarn add file:/path/to/your-plugin将插件作为本地依赖安装。

  2. 生成生产构建产物:执行修正后的构建命令,成功后会在项目根目录的build文件夹下生成完整的生产构建包。

  3. 编写Dockerfile:基于官方OpenSearch Dashboards镜像,替换内置的应用文件为你的构建产物:

# 替换为你使用的OpenSearch Dashboards版本号,需与插件兼容
FROM opensearchproject/opensearch-dashboards:2.11.0

# 复制本地构建产物到容器内的应用目录
COPY ./build/opensearch-dashboards /usr/share/opensearch-dashboards

# 配置OpenSearch服务地址(根据你的部署环境调整)
ENV OPENSEARCH_HOSTS="https://opensearch:9200"
  1. 构建Docker镜像:在Dockerfile所在目录执行命令:
docker build -t custom-opensearch-dashboards:v1.0 .
  1. 运行容器:启动自定义镜像,映射端口到本地:
docker run -d -p 5601:5601 custom-opensearch-dashboards:v1.0

注意事项

  • 确保插件版本与OpenSearch Dashboards版本严格兼容,避免运行时错误
  • 若处于离线环境,提前执行yarn install --offline安装所有依赖后再构建
  • 构建前可先执行yarn clean清理旧构建产物,避免缓存问题

内容的提问来源于stack exchange,提问作者Siddhesh Shinde

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 19:17:46