我在尝试运行 docker build 时遇到问题。这是我运行的命令:
docker build -t <name> .
Dockerfile 包含以下第一行:
FROM ubuntu:xenial
RUN apt-get -y update
RUN apt-get -y install --fix-missing \
sudo \
git
但是,在构建它时,我收到以下错误消息:
Unable to correct missing packages.
E: Failed to fetch http://security.ubuntu.com/ubuntu/pool/main/p/perl/perl-modules-5.22_5.22.1-9ubuntu0.2_all.deb 404 Not Found [IP: 91.189.88.152 80]
E: Failed to fetch http://security.ubuntu.com/ubuntu/pool/main/p/perl/libperl5.22_5.22.1-9ubuntu0.2_amd64.deb 404 Not Found [IP: 91.189.88.152 80]
E: Failed to fetch http://security.ubuntu.com/ubuntu/pool/main/p/perl/perl_5.22.1-9ubuntu0.2_amd64.deb 404 Not Found [IP: 91.189.88.152 80]
E: Failed to fetch http://archive.ubuntu.com/ubuntu/pool/main/i/ifupdown/ifupdown_0.8.10ubuntu1.2_amd64.deb 404 Not Found [IP: 91.189.88.152 80]
E: Failed to fetch http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.0.0_1.0.2g-1ubuntu4.11_amd64.deb 404 Not Found [IP: 91.189.88.152 80]
E: Failed to fetch http://security.ubuntu.com/ubuntu/pool/main/o/openssl/openssl_1.0.2g-1ubuntu4.11_amd64.deb 404 Not Found [IP: 91.189.88.152 80]
E: Aborting install.
The command '/bin/sh -c apt-get -y install --fix-missing sudo git' returned a non-zero code: 100
它在我朋友的电脑上运行良好,但每次我重试时它都会在我的电脑上崩溃。我使用的是 docker 版本 18.03.1-ce 和 Ubuntu 16.04.4,一切都是最新的,老实说,我根本不知道出了什么问题……
答案1
我看到了此错误,我通过提供 docker build parm 解决了该错误,--no-cache
如下所示
docker build -t <name> --no-cache .
然后在此构建正确之后,您可以自由地删除--no-cache
后续构建的 parm 以加快构建速度
答案2
Docker 的说明书上说将更新和安装放在同一行。
我还发现我只能使用普通的“RUN”命令,而“ONBUILD”会导致问题。