Node.js 18运行时Google Cloud App Engine部署依赖安装异常求助
GCP App Engine nodejs18运行时安装开发依赖的异常问题及处理
问题详情
- 近期GCP App Engine nodejs18运行时版本更新后,部署过程中会自动执行build命令并安装开发依赖,这与官方文档中仅安装
dependencies字段内依赖包的说明不一致 - 查看构建日志可发现版本更新前后的执行命令差异:更新前执行
npm install,更新后改为执行npm ci(该命令会默认安装devDependencies中的所有包)
临时解决办法
目前已通过在package.json中添加空的gcp-build脚本,避免触发默认的build流程,从而阻止开发依赖被安装:
{ "scripts": { "gcp-build": "" } }
彻底解决建议
- 反馈问题至GCP官方:向GCP技术支持提交工单,提供构建日志的前后对比内容,说明该行为与官方文档不符,要求修正运行时的默认构建逻辑
- 锁定运行时具体版本:在
app.yaml中指定nodejs18的具体旧版本号(而非使用nodejs18默认拉取最新版本),回退到未出现该问题的运行时环境 - 自定义构建流程:使用Cloud Build配置自定义构建步骤,明确执行
npm install --only=production命令,强制仅安装生产依赖,替代App Engine的默认构建行为
内容的提问来源于stack exchange,提问作者Hardik Sondagar
相关产品推荐
相关产品推荐

