首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Docker Debian安装失败

Docker Debian安装失败
EN

Stack Overflow用户
提问于 2015-12-08 17:06:30
回答 1查看 194关注 0票数 2

我有一个能够工作的Dockerfile,但是如果我向apt-get install命令添加了任何新的依赖项,它就会失败。例如,这起作用是:

代码语言:javascript
复制
FROM debian:stable

RUN apt-get update

RUN apt-get install -y \
    python \
    ...
    apache2

但如果我尝试这个,它就失败了:

代码语言:javascript
复制
FROM debian:stable

RUN apt-get update

RUN apt-get install -y \
    python \
    ...
    apache2
    python-mysqldb

我可以将python-mysqldb替换为其他任何东西,例如,git-core,它仍然会用相同的错误消息失败:

代码语言:javascript
复制
Unable to correct missing packages.
E: Failed to fetch http://security.debian.org/pool/updates/main/l/linux/linux-libc-dev_3.16.7-ckt11-1+deb8u5_amd64.deb  404  Not Found [IP: 149.20.20.6 80]

E: Aborting install.

对于为什么添加一个新的依赖项会导致失败以及如何修复它,有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-08 17:13:46

我发现您需要将update & install命令加入到同一个运行块中。

例:

代码语言:javascript
复制
RUN apt-get update \
 && apt-get install -y \
    python \
    ...
    apache2 \
    python-mysqldb

根据这个职位的描述

默认情况下,Docker缓存命令以减少生成映像的时间。除非在这些命令之前(或同一行)有任何更改。

同时,我注意到AWS实例将它们分开,就像您拥有它们一样。所以我不知道它在那里的效果是否不同。可能默认情况下,它们会禁用缓存。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34161840

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档