以下命令在 shell 中运行时似乎有效
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
但在
Dockerfile
中执行时失败,如下所示:Warning: apt-key output should not be parsed (stdout is not a terminal)
Executing: /tmp/apt-key-gpghome.1CIuj3LUOP/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
gpg: cannot open '/dev/tty': No such device or address
特定的
Dockerfile
RUN 命令在 openjdk:8
图像上执行,该图像又从 buildpack-deps:stretch-scm
绘制 最佳答案
通过在 --no-tty
命令上添加 apt-key adv
也解决了;
知道为什么会这样吗?
关于docker - apt-key 命令在 shell 上工作,但在 Dockerfile 上失败,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53371626/