缺少/ tmp的Docker映像?

时间:2018-12-27 19:42:54

标签: docker debian dockerfile

我试图基于this one构建基于Debian Stretch的映像,并在运行apt-get update时不断出现此类错误:

W: GPG error: http://security.debian.org stretch/updates InRelease: Couldn't create temporary file /tmp/apt.conf.FNG6R8 for passing config to apt-key

仅添加

后已解决
mkdir /tmp && chmod 777 /tmp \

到Dockerfile RUN。但是问题是,Docker镜像是否缺少tmp文件?仅基于buildpack-deps:stretch-scm的图像会出现这种情况吗?有比手动创建/tmp目录更好的方法吗?

2 个答案:

答案 0 :(得分:2)

我遇到了与您相同的错误,并且按照BMitch的建议,在我的Dockerfile中添加了这一层为我修复了该问题。

RUN chmod 1777 /tmp

答案 1 :(得分:1)

/ tmp存在于映像中,您的问题在其他地方:

$ docker run -it --rm buildpack-deps:stretch-scm /bin/bash
root@c7fc40670734:/# ls -al /tmp
total 8
drwxrwxrwt 1 root root 4096 Nov 16 11:16 .
drwxr-xr-x 1 root root 4096 Dec 27 19:48 ..

请注意,/ tmp应该设置为1777,而不是777,为了安全起见,您需要使用粘性位