質問: Dockerfile FROM python:3-slim RUN apt-get update && apt-get install -y libpq-dev gcc RUN pip3 install psycopg2 上記の3行のDockerfileをwindows上のコマンドプロンプト(DockerDisktop)から実行するとうまくいきます。 しかし、AWSのEC2インスタンスにSSHで接続してDockerインストール後、同じように実行するとエラーとなります。 セキュリティグループは80ポートを開けて実行しています。 Step 2/3 : RUN apt-get update && apt-get install -y libpq-dev gcc Err1: http://security.debian.org/debian-security buster/updates InRelease Temporary failure resolving 'security.debian.org' Err2: http://deb.debian.org/debian buster InRelease Temporary failure resolving 'deb.debian.org' Err3: http://deb.debian.org/debian buster-updates InRelease Temporary failure resolving 'deb.debian.org' 上記のエラーとなるのですが、ネットワークにつながっていないようなのでいろいろ試行錯誤したのですが、だめでした。 なお、同じコマンドをEC2上で直接実行するとうまくいきます。 回避策や調査方法などご教授お願いできますでしょうか
回答: 現象が興味深かったので、ググってみました。 Docker イメージで DNS lookup に失敗した場合に出力されるメッセージのようです。 SOLVED: Docker build “Could not resolve ‘archive.ubuntu.com’” apt-get fails to install anything > > Its possible that the network connection for docker isn't connected and this can lead to weird Sometimes the internet connection for docker wont be working properly and can lead to weird errors because of a couple of reasons One quick way out of this is to first find out if DNS lookups are failing in the docker images. > > > ただ、このリンク先の説明と本質問の挙動には、ズレもあります。 (本件では、8.8.8.8 への到達性は確保できていると思います。) リンク先の切り分けや問題点の説明は、質問の補足に役には立つと思うので、結果を質問に追記してみてください。 より詳しい方から回答がつくかも知れません。