如何在Alpine 3.17 Docker镜像中使用Node.js LTS版本?
如何在Alpine 3.17 Docker镜像中指定安装Node.js 18.20 LTS版本
在Alpine 3.17的软件仓库中,nodejs包默认指向当前版本(19.x),而LTS版本(18.x)需要通过指定版本号或专门的包名来安装。以下是两种可行的配置方案:
方案一:直接通过apk指定Node.js 18.20版本安装
Alpine的软件仓库中提供了具体版本的Node.js包,你可以在apk add命令中明确指定版本号来安装18.20系列的Node.js及对应版本的npm:
FROM alpine:3.17@sha256:c0d488a800e4127c334ad20d61d7bc21b4097540327217dfab52262adc02380c # 指定安装Node.js 18.20.x和对应版本的npm RUN apk --update add bash curl git nodejs=18.20.* npm=9.*
说明:
- 使用
18.20.*可以匹配该系列的最新补丁版本,确保安装的是18.20分支下的最新稳定版 - npm版本需要与Node.js 18.x兼容,
9.*是Node.js 18.x对应的npm稳定版本范围
方案二:安装nodejs-lts包(对应18.x系列)
Alpine仓库中提供了nodejs-lts包,该包默认指向当前的LTS版本(在Alpine 3.17中即为18.x系列),你可以直接安装这个包来获取LTS版本的Node.js:
FROM alpine:3.17@sha256:c0d488a800e4127c334ad20d61d7bc21b4097540327217dfab52262adc02380c # 安装LTS版本的Node.js及对应npm RUN apk --update add bash curl git nodejs-lts npm
验证安装结果
构建镜像后,你可以进入容器执行以下命令确认版本:
node -v # 应输出v18.20.x npm -v
内容的提问来源于stack exchange,提问作者user3142695
相关产品推荐
相关产品推荐

