ホームページ >バックエンド開発 >Golang >ARM64 Docker 上の QEMU-x86_64: 「そのようなファイルまたはディレクトリはありません」エラーを修正する方法?

ARM64 Docker 上の QEMU-x86_64: 「そのようなファイルまたはディレクトリはありません」エラーを修正する方法?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-19 09:48:10310ブラウズ

QEMU-x86_64 on ARM64 Docker: How to Fix

No such File or Directory Error: ARM64 Docker Builds での QEMU-x86_64 のトラブルシューティング

QEMU-x86_64 を使用して M1 MacOS で Docker イメージをビルドする場合、ユーザーにエラーが発生する可能性があります「qemu-x86_64: '/lib64/ld-linux-x86-64.so.2' を開けませんでした: そのようなファイルまたはディレクトリはありません。」このエラーは、ARM64 M1 アーキテクチャに Dockerfile に必要な x86_64 共有オブジェクト ライブラリがないために発生します。

この問題を解決するには、Dockerfile の FROM ディレクティブで指定されているプラ​​ットフォームを変更する必要があります。デフォルトの ARM64 プラットフォームを使用する代わりに、次のように linux/amd64 プラットフォームを明示的に指定します:

FROM --platform=linux/amd64 ubuntu:20.04

この変更により、Docker は必要な共有オブジェクト ライブラリを含む x86_64 基本イメージを使用するようになります。その結果、ビルド プロセスは、x86_64 用に明示的にコンパイルされたコードをインストールして実行しようとします。

あるいは、可能であれば、ビルド時に ARM64 基本イメージを使用し、コンテナ内でソフトウェアを x86_64 用にコンパイルすることを検討してください。エミュレーションにより速度が低下する可能性がありますが、このアプローチにより、M1 ベースの Mac でコンテナを実行する場合のパフォーマンスが向上します。

以上がARM64 Docker 上の QEMU-x86_64: 「そのようなファイルまたはディレクトリはありません」エラーを修正する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。