Rumah > pembangunan bahagian belakang > Golang > Mengapa Pembinaan Docker Saya Gagal dengan 'qemu-x86_64: Tidak dapat membuka '/lib64/ld-linux-x86-64.so.2'' pada M1 Mac?

Mengapa Pembinaan Docker Saya Gagal dengan 'qemu-x86_64: Tidak dapat membuka '/lib64/ld-linux-x86-64.so.2'' pada M1 Mac?

DDD
Lepaskan: 2024-12-17 11:15:26
asal
178 orang telah melayarinya

Why Does My Docker Build Fail with

"qemu-x86_64: Tidak dapat membuka '/lib64/ld-linux-x86-64.so.2': Tiada fail atau direktori sedemikian" Ralat dalam Docker Bina pada M1 Macs

Apabila membina imej Docker pada M1 Mac menggunakan Docker Desktop, pengguna mungkin menghadapi mesej ralat "qemu-x86_64: Tidak dapat membuka '/lib64/ld-linux-x86-64.so.2': Tiada fail atau direktori sedemikian." Isu ini timbul kerana Docker cuba menggunakan imej ARM64 sebagai imej asas tetapi kemudiannya memerlukan binari yang disusun untuk seni bina x86_64.

Punca masalah ini ialah seni bina M1 Mac berbeza daripada seni bina x86_64 tradisional. Walaupun ia menyokong emulasi melalui qemu-x86_64, ketiadaan fail yang diperlukan "/lib64/ld-linux-x86-64.so.2" dalam imej asas ARM64 membawa kepada ralat yang dilaporkan.

< h3>Penyelesaian:

Berlawanan arah, penyelesaian adalah untuk menentukan secara eksplisit --platform=linux/amd64 pada baris "FROM" dalam Dockerfile:

FROM --platform=linux/amd64 ubuntu:focal
Salin selepas log masuk

Ini mengarahkan Docker untuk menggunakan imej asas x86_64, memastikan bahawa fail yang diperlukan hadir semasa proses binaan. Dengan bermula daripada imej x86_64, proses binaan boleh diteruskan tanpa memerlukan emulasi, menyelesaikan ralat fail tidak ditemui.

Sebagai alternatif, pengguna boleh mempertimbangkan untuk membina imej asas berasaskan ARM64 mereka sendiri dan menyusun perisian yang diperlukan secara manual dalam bekas semasa masa pembinaan. Walau bagaimanapun, pilihan ini mungkin lebih sesuai untuk senario tertentu di mana binari ARM64 pra-bina tidak tersedia.

Atas ialah kandungan terperinci Mengapa Pembinaan Docker Saya Gagal dengan 'qemu-x86_64: Tidak dapat membuka '/lib64/ld-linux-x86-64.so.2'' pada M1 Mac?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan