我有一个项目位于使用 Node v14 的预构建 docker 容器内。我很久以前就被告知容器是这样拉的:
docker pull node:20-alpine
..但没有太多其他信息。
在我的 package.json 中,我将其放在 engines 下,如下所示:
{
dependencies: {}
engines: {
"node": ">=14.0.0 <15.0.0"
"npm": ">=6"
}
}
我尝试以常见的方式更新它,在
Dockerfile中添加
FROM
,在services下的docker-compose.yml中添加image,手动编辑engines条目到^20.16.0
,并且我一直删除node_modules,yarn.lock,并重建容器,但没有成功。
在容器内,我无法运行
apt
或除 yarn 之外的任何其他 shell 命令。
我在容器外面做了一个
docker pull node:20-alpine
,但我不知道从这里去哪里。我最终想要的是升级当前容器的Node.js版本,但我不排除从我刚刚拉取的版本创建一个新容器。
提供您的 Dockerfile 和 docker-compose.yaml