在Alpine Linux 上找到Docker Go 二進位文件,但在路徑中未找到其他Go 二進位檔案
嘗試在Linux 上執行GoLinux 上執行GoLinux 上執行GoLinux 上執行GoLinux 上執行GoLinux 上執行GoLinux 上執行GoLinux 上執行GoLinux 上執行GoLinux 上執行GoLinux》上執行GoLinux 上執行GoLinux 上執行GoLinux 上執行GoLinux 上執行GoLinux 上執行GoLinux 上執行GoLinux”二進位檔案時會出現此問題除Docker Go 二進位檔案之外的Alpine Docker 映像。系統無法辨識已安裝的二進位。
問題來源:
問題在於已安裝的 Go 二進位與底層基於 musl 的兼容性缺乏阿爾卑斯Linux。 Musl 是一個輕量級 C 函式庫,與其他 Linux 發行版中常用的 glibc 不同。
解決方案:
要解決此問題,請在 /lib/ 之間建立符號連結libc.musl-x86_64.so.1和/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
此符號連結確保已安裝的Go 二進位檔案和musl 庫之間的相容性,使二進位檔案能夠按預期被識別和執行。
以上是儘管 Docker 的 Go 二進位檔案可以工作,但為什麼我的 Go 二進位檔案無法在 Alpine Linux 上運行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!