Rumah >pembangunan bahagian belakang >Golang >Mengapa Membina Fail Docker pada M1 Mac Gagal dengan 'Tiada fail atau direktori sedemikian' untuk '/lib64/ld-linux-x86-64.so.2'?
Menghadapi Ralat "Tiada fail atau direktori sedemikian" untuk '/lib64/ld-linux-x86-64.so.2' dalam qemu-x86_64
Apabila cuba membina fail Docker pada MacOS M1 menggunakan Desktop Rancher, pengguna mungkin menghadapi perkara berikut ralat:
qemu-x86_64: Could not open '/lib64/ld-linux-x86-64.so.2': No such file or directory
Ralat ini berpunca daripada cubaan memasang dan melaksanakan kod yang disusun untuk x86_64 pada sistem ARM64 (Apple Silicon). Secara lalai, Docker boleh memilih imej ARM64 untuk platform, yang tidak mempunyai perpustakaan yang diperlukan.
Penyelesaian untuk M1 MacOS:
Berbeza dengan penyelesaian poster asal, kunci untuk menyelesaikan isu ini pada M1 MacOS adalah dengan menyatakan secara eksplisit platform sebagai linux/amd64 dalam baris FROM Dockerfile. Ini memastikan bahawa Docker bermula dengan imej asas yang merangkumi perpustakaan yang diperlukan:
FROM --platform=linux/amd64 ubuntu:focal
Dengan pengubahsuaian ini, proses binaan akan menggunakan imej x86_64 sebagai titik permulaan, membolehkan pemasangan dan pelaksanaan perisian x86_64 dalam bekas itu.
Tambahan Pertimbangan:
Jika boleh, disyorkan untuk mempertimbangkan menggunakan imej asas ARM64 dan menyusun perisian dalam bekas semasa masa binaan. Pendekatan ini mungkin meningkatkan prestasi apabila menjalankan bekas pada M1 Mac, kerana ia menghilangkan keperluan untuk emulasi.
Atas ialah kandungan terperinci Mengapa Membina Fail Docker pada M1 Mac Gagal dengan 'Tiada fail atau direktori sedemikian' untuk '/lib64/ld-linux-x86-64.so.2'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!