次のdockerfileに対してdocker build .
を実行する
FROM ubuntu:16.04
MAINTAINER [email protected]
RUN apt-get clean \
&& rm -rf /var/lib/apt/lists/* \
&& apt-get update -y
エラーE: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/xenial-updates/main/source/by-hash/SHA256/50ccff6c903e98e2e52c1ab6dae4a85d23a84369325fd971c4bfc3752e6a7ede Hash Sum mismatch E: Some index files failed to download. They have been ignored, or old ones used instead.
が表示されます
次に、この質問のすべてのソリューションをdockerfileに追加しようとしました: 「ハッシュ合計の不一致」エラーによるパッケージリストのダウンロードのトラブル
FROM ubuntu:16.04
MAINTAINER [email protected]
RUN touch /etc/apt/apt.conf.d/99fixbadproxy \
&& echo "Acquire::http::Pipeline-Depth 0;" >> /etc/apt/apt.conf.d/99fixbadproxy \
&& echo "Acquire::http::No-Cache true;" >> /etc/apt/apt.conf.d/99fixbadproxy \
&& echo "Acquire::BrokenProxy true;" >> /etc/apt/apt.conf.d/99fixbadproxy \
&& apt-get update -o Acquire::CompressionTypes::Order::=gz \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/* \
&& apt-get update -y
しかし、私は同じエラーを受け取ります。
他に何ができますか?
Dockerの依存関係が欠落しているか、dockerが正しくインストールされていない可能性があります。
buntuでのDockerのインストール の完全な手順は次のとおりです。
特に この部分 が欠落している可能性があります。
これらの公式の指示に従ってdockerを再インストールすることをお勧めします。
問題が解決しない場合は、VMまたはホストマシンのネットワーク接続に問題がある可能性があります。
結局、あなたのDockerfileは私には正しいようですので、これが原因ではないはずです。
選択したソリューションは私にとってはうまくいきませんでした。そして、私はこれが常にそうであるとは限らないことに気付きました-つまり、私が1日か2日待っても、エラーが出ません。使用しているdockerのバージョン( Robie で説明されている)よりも、ubuntuリポジトリに関係していると思われます。
私の解決策は、デフォルトのubuntuリポジトリの代わりに official mirrors のいずれかを使用することです。 xenialをUbuntuバージョンに置き換えます。不一致が発生している場所に応じて、すべての行またはすべての行に追加のdeb-src行が必要になる場合があります。ミラーはデフォルトに比べて遅いことがわかりました。
RUN rm -rf /etc/apt/sources.list
RUN echo "deb mirror://mirrors.ubuntu.com/mirrors.txt xenial main restricted universe multiverse" >> /etc/apt/sources.list
RUN echo "deb mirror://mirrors.ubuntu.com/mirrors.txt xenial-updates main restricted universe multiverse" >> /etc/apt/sources.list
RUN echo "deb-src mirror://mirrors.ubuntu.com/mirrors.txt xenial-updates main restricted universe multiverse" >> /etc/apt/sources.list
RUN echo "deb mirror://mirrors.ubuntu.com/mirrors.txt xenial-backports main restricted universe multiverse" >> /etc/apt/sources.list
RUN echo "deb mirror://mirrors.ubuntu.com/mirrors.txt xenial-security main restricted universe multiverse" >> /etc/apt/sources.list