我们正在使用Azure管道和使用Ubuntu 18.04作为操作系统的构建代理。
我目前正在尝试将我们管道中的Nodejs版本从16更新到18。通过使用NodeTool task from Azure Pipelines和versionSpec: "18.x"
,安装Nodejs非常简单。
然而,在使用Nodejs之后,它提示我缺少依赖项:node: /lib/x86_64-linux-gnu/libc.so.6: version
GLIBC_2.28' not found (required by node)`
我甚至可以按照以下说明使用docker复制此行为
docker pull ubuntu:18.04
docker run -it {IMAGE-ID}
# console switches to TTY session for running container…
apt update
apt install curl
curl -fsSL https://deb.nodesource.com/setup_18.x | bash
apt-get install -y nodejs
# checking the node version generates the error above
node -v
这里的问题可能有点过了,但是我不习惯使用linux系统。
我可以很容易地解决nodejs的依赖关系吗?或者安装缺少的依赖关系的一般方法是什么?
1条答案
按热度按时间y1aodyip1#
此消息在上述安装过程中出现。
我试过了,但仍然是同样的错误。
因此,经过一番研究后,似乎节点18和ubuntu 18是不可竞争的。
https://github.com/nodesource/distributions/issues/1392
如果你谷歌的错误,你会发现更多关于这个问题。
升级到ubuntu20.04应该可以解决这个问题。如果你不需要ubuntu是因为nodejs之外的其他原因,我建议你试试node:18-alpine。(nodejs官方图片之一)。Alpine比ubuntu轻量级多了。