docker runのタイミングでdockerfileのコマンドがエラーになってしまうことで処理が止まる問題を一時的に回避する
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
docker runのタイミングでDockerfileのコマンドがエラーになってしまうことで処理が止まる問題を一時的に回避するための対応をメモしました。
エラーが発生した経緯
apt-getでmysql-clinetをインストールしたかったのだが
その場合apt-get updateを実施する必要があり
一部のパッケージのリクエスト先が404となってエラーになってしまうため
このエラーを回避したかったことがきっかけになります。
Dockerfile
DockerfileFROM java:8-jre
RUN apt-get update -y;
RUN apt-get install mysql-client -y
発生したエラー
docker build実行時にエラーになります。
実行ログ
docker buildコマンドを実行したログになります。
bash$ docker build -t hoge .
Sending build context to Docker daemon 2.048kB
Step 1/3 : FROM java:8-jre
---> e44d62cf8862
Step 2/3 : RUN apt-get update -y;
---> Running in 23a23621a47c
Get:1 http://security.debian.org jessie/updates InRelease [44.9 kB]
Ign http://deb.debian.org jessie InRelease
Get:2 http://deb.debian.org jessie-updates InRelease [16.3 kB]
Ign http://deb.debian.org jessie-backports InRelease
Get:3 http://deb.debian.org jessie Release.gpg [1652 B]
Ign http://deb.debian.org jessie-backports Release.gpg
Get:4 http://deb.debian.org jessie Release [77.3 kB]
Ign http://deb.debian.org jessie-backports Release
Err http://deb.debian.org jessie-backports/main amd64 Packages
Get:5 http://security.debian.org jessie/updates/main amd64 Packages [992 kB]
Get:6 http://deb.debian.org jessie-updates/main amd64 Packages [20 B]
Get:7 http://deb.debian.org jessie/main amd64 Packages [9098 kB]
Err http://deb.debian.org jessie-backports/main amd64 Packages
Err http://deb.debian.org jessie-backports/main amd64 Packages
404 Not Found
Fetched 10.2 MB in 8s (1213 kB/s)
W: There is no public key available for the following key IDs:
AA8E81B4331F7F50
W: Failed to fetch http://deb.debian.org/debian/dists/jessie-backports/main/binary-amd64/Packages 404 Not Found
E: Some index files failed to download. They have been ignored, or old ones used instead.
エラーについて
jessie-backports/main amd64 Packagesを取得しに行った際に
deb.debian.orgが404となっているためステータスコードがエラーになり
処理が停止しています。
解決手順
暫定ですが一時的にステータスコード 0を返して処理の停止を回避しています。
Dockerfile
DockerfileFROM java:8-jre
RUN apt-get update -y; exit 0;
RUN apt-get install mysql-client -y
実行ログ
修正したDockerfileで再度docker buildコマンドを実行したログになります。
bash$ docker build -t hoge .
Sending build context to Docker daemon 2.048kB
Step 1/3 : FROM java:8-jre
---> e44d62cf8862
Step 2/3 : RUN apt-get update -y; exit 0;
---> Running in ae8c71111846
Get:1 http://security.debian.org jessie/updates InRelease [44.9 kB]
Ign http://deb.debian.org jessie InRelease
Get:2 http://deb.debian.org jessie-updates InRelease [16.3 kB]
Ign http://deb.debian.org jessie-backports InRelease
Get:3 http://deb.debian.org jessie Release.gpg [1652 B]
Ign http://deb.debian.org jessie-backports Release.gpg
Get:4 http://deb.debian.org jessie Release [77.3 kB]
Ign http://deb.debian.org jessie-backports Release
Err http://deb.debian.org jessie-backports/main amd64 Packages
Err http://deb.debian.org jessie-backports/main amd64 Packages
Err http://deb.debian.org jessie-backports/main amd64 Packages
Err http://deb.debian.org jessie-backports/main amd64 Packages
Err http://deb.debian.org jessie-backports/main amd64 Packages
404 Not Found
Get:5 http://security.debian.org jessie/updates/main amd64 Packages [992 kB]
Get:6 http://deb.debian.org jessie-updates/main amd64 Packages [20 B]
Get:7 http://deb.debian.org jessie/main amd64 Packages [9098 kB]
W: There is no public key available for the following key IDs:
AA8E81B4331F7F50
W: Failed to fetch http://deb.debian.org/debian/dists/jessie-backports/main/binary-amd64/Packages 404 Not Found
E: Some index files failed to download. They have been ignored, or old ones used instead.
Fetched 10.2 MB in 13s (732 kB/s)
Removing intermediate container ae8c71111846
---> 28ae927cbccd
Step 3/3 : RUN apt-get install mysql-client -y
---> Running in bc18b00d9c52
暫定ですがエラーは回避することができました。
恒久対応
根本的な解決はパッケージを正しく取得することで
DNSのあたり設定に問題があると思っているため引き続きこちらについては調査していきたいと思います。
articleDocker で DNS 解決に失敗する時の原因と対処:overlay2・systemd-resolved・WSL2 対応
articleDocker を用いた統一ローカル環境:新人オンボーディングを 1 日 → 1 時間へ
articleDocker で Dev Container を構築:VS Code/Codespaces で即戦力環境を配布
articleDocker マルチステージビルド設計大全:テスト分離・依存最小化・キャッシュ戦略
articleDocker コマンド早見表:build/run/exec/logs/prune を 1 枚で網羅
articleWindows WSL2 に Docker を最適導入:I/O 最適化・メモリ配分・互換性チェック
articleNuxt × Vercel/Netlify/Cloudflare:デプロイ先で変わる性能とコストを実測
articleRemix で「Hydration failed」を解決:サーバ/クライアント不整合の診断手順
articlePreact 本番最適化運用:Lighthouse 95 点超えのビルド設定と監視 KPI
articleNginx microcaching vs 上流キャッシュ(Varnish/Redis)比較:TTFB と整合性の最適解
articleNestJS × TypeORM vs Prisma vs Drizzle:DX・性能・移行性の総合ベンチ
articlePlaywright × Allure レポート運用:履歴・トレンド・失敗分析を見える化する
blogiPhone 17シリーズの発表!全モデルiPhone 16から進化したポイントを見やすく整理
blogGoogleストアから訂正案内!Pixel 10ポイント有効期限「1年」表示は誤りだった
blog【2025年8月】Googleストア「ストアポイント」は1年表記はミス?2年ルールとの整合性を検証
blogGoogleストアの注文キャンセルはなぜ起きる?Pixel 10購入前に知るべき注意点
blogPixcel 10シリーズの発表!全モデル Pixcel 9 から進化したポイントを見やすく整理
blogフロントエンドエンジニアの成長戦略:コーチングで最速スキルアップする方法
review今の自分に満足していますか?『持たざる者の逆襲 まだ何者でもない君へ』溝口勇児
reviewついに語られた業界の裏側!『フジテレビの正体』堀江貴文が描くテレビ局の本当の姿
review愛する勇気を持てば人生が変わる!『幸せになる勇気』岸見一郎・古賀史健のアドラー実践編で真の幸福を手に入れる
review週末を変えれば年収も変わる!『世界の一流は「休日」に何をしているのか』越川慎司の一流週末メソッド
review新しい自分に会いに行こう!『自分の変え方』村岡大樹の認知科学コーチングで人生リセット
review科学革命から AI 時代へ!『サピエンス全史 下巻』ユヴァル・ノア・ハラリが予見する人類の未来