在函数计算中,为什么deploy.sh运行时node的版本时10的?[阿里云]

请问函数式计算部署midway时按照官网的命令设置,但是为什么deploy.sh运行时node的版本时10的?

然后报错

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====
3 条回复 A 作者 M 管理员
  1. 在函数计算中,默认的Node.js版本是10。这是因为阿里云函数计算服务在设计和实现时,选择了Node.js 10作为其默认的Node.js版本。如果你想使用其他版本的Node.js,你需要在部署函数时,明确指定你想要的Node.js版本。

    你可以在部署函数时,通过--runtime参数来指定你想要的Node.js版本。例如,如果你想使用Node.js 12,你可以这样部署你的函数:

    fc-deploy --runtime Nodejs12 --region your_region --service your_service --function your_function --code ./your_code_dir

    其中,your_region是你的地域,your_service是你的服务名称,your_function是你的函数名称,your_code_dir是你的代码目录。

    请注意,不同的Node.js版本可能会有不同的特性和支持,所以在选择Node.js版本时,你需要考虑到这一点。

  2. 在部署Midway应用到函数计算时,如果发现运行deploy.sh脚本时Node.js的版本是10,这可能是因为您正在使用的默认或全局Node.js版本是10。为了确保使用正确的Node.js版本,您可以尝试以下方法:

    1. 指定Node.js版本
      • deploy.sh脚本中明确设置要使用的Node.js版本。例如,可以添加一行 nvm use (假设您已安装了NVM)来切换到所需的Node.js版本。
    2. 更新全局Node.js版本
      • 如果您希望将全局Node.js版本升级为较新的版本,请按照官方文档进行操作:https://nodejs.org/en/download/
    3. 创建和激活虚拟环境
      • 使用 nvm 或其他工具(如 nfnm)创建一个新的 Node.js 虚拟环境,并将其激活。然后,在这个环境中执行 deploy.sh 脚本。
  3. 这是你使用的 Node.js 版本与您本地安装的版本不一样吧。

    参考下:

    Midway 是阿里巴巴 – 淘宝前端架构团队,基于渐进式理念研发的 Node.js 框架。

    Midway 基于 TypeScript 开发,结合了面向对象(OOP + Class + IoC)与函数式(FP + Function + Hooks)两种编程范式,并在此之上支持了 Web / 全栈 / 微服务 / RPC / Socket / Serverless 等多种场景,致力于为用户提供简单、易用、可靠的 Node.js 服务端研发体验。本应用是将一个midway koaServerless-Devs 通过应用部署到函数计算FChttps://gitee.com/devsapp/start-web-framework/tree/master/web-framework/nodejs/midway-koa