docker - apt-key 命令在 shell 上有效,但在 Dockerfile 上失败
问题描述
以下命令在 shell 中运行时似乎有效
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
但在 a 中执行时失败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
解决方案
Solved by adding --no-tty
on the apt-key adv
command also;
Any idea however why this was happening?
推荐阅读
- multithreading - 允许一个线程更新值(刷新身份验证令牌),其他线程等待并跳过临界区
- python - 根据列列表 Pandas 将浮点列转换为 int
- c# - 获取字符串 Html 敏捷包
- python - 运行“numpy.f2py.compile()”时出现“IOError: [Errno 13] Permission denied”
- excel - 如何在工作簿关闭时使用 VBA 删除条件格式
- python - Jupyter notebook 在浏览器上显示空白主页
- java - Gradle groovy 语法“配置 {all*.exclude ...}”
- reactjs - 使用 AsyncStorage 保存价值的麻烦
- python - 从python中的类继承__init__
- c# - 简化 C# 中的多个(非嵌套)foreach 循环