Rumah >pembangunan bahagian belakang >Golang >Mengapa My Go Binary Tidak Dijalankan di Alpine Linux Walaupun Docker's Go Binary Bekerja?
Docker Go Binary Found but Other Go Binary Not Found in Path on Alpine Linux
Isu ini timbul apabila cuba menjalankan binari Go pada imej Alpine Docker selain binari Docker Go. Perduaan yang dipasang tidak diiktiraf oleh sistem.
Asal Masalah:
Masalahnya terletak pada kekurangan keserasian antara binari Go yang dipasang dan asas berasaskan musl Alpine Linux. Musl ialah perpustakaan C ringan yang berbeza daripada glibc yang biasa digunakan dalam pengedaran Linux lain.
Penyelesaian:
Untuk menyelesaikan isu ini, cipta pautan simbolik antara /lib/ libc.musl-x86_64.so.1 dan /lib64/ld-linux-x86-64.so.2:
RUN mkdir /lib64 && ln -s /lib/libc.musl-x86_64.so.1 /lib64/ld-linux-x86_64.so.2
Pautan sym ini memastikan keserasian antara binari Go yang dipasang dan perpustakaan musl, membolehkan binari itu dikenali dan dilaksanakan seperti yang diharapkan.
Atas ialah kandungan terperinci Mengapa My Go Binary Tidak Dijalankan di Alpine Linux Walaupun Docker's Go Binary Bekerja?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!