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

在Amazon Linux 2的AWS Amplify中使用Node.js 18失败问题咨询

解决AWS Amplify上Node.js 18在Amazon Linux 2构建时的GLIBC版本错误

问题根源

Amazon Linux 2自带的GLIBC版本是2.26,而Node.js 18编译时依赖GLIBC 2.27及以上版本,直接安装官方Node.js 18包会触发兼容性报错。

可行解决方案

方案一:用nvm安装适配版Node.js 18

修改Amplify的amplify.yml构建配置,通过nvm安装能兼容Amazon Linux 2的Node.js 18:

version: 1
frontend:
  phases:
    preBuild:
      commands:
        - curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
        - export NVM_DIR="$HOME/.nvm"
        - [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
        - nvm install 18 --reinstall-packages-from=16
        - nvm use 18
    build:
      commands:
        - npm install
        - npm run build

nvm安装的Node.js是针对当前环境编译的版本,能避开系统GLIBC版本限制。

方案二:使用AWS官方的Corretto Node.js

AWS提供的Corretto Node.js专门适配Amazon Linux环境,不会有GLIBC依赖问题:
修改amplify.yml的preBuild步骤:

version: 1
frontend:
  phases:
    preBuild:
      commands:
        - sudo yum install -y corretto-nodejs-18
        - sudo alternatives --set nodejs /usr/bin/corretto-nodejs-18
    build:
      commands:
        - npm install
        - npm run build

方案三:切换到Amazon Linux 2023镜像

如果你的应用允许更换构建镜像,直接在Amplify控制台的构建设置里把镜像换成Amazon Linux 2023——它自带GLIBC 2.34,原生支持Node.js 18,换完重新构建就行。

内容的提问来源于stack exchange,提问作者Sahar LaOr

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 17:20:26