Die installierte Go-Binärdatei in Alpine Linux Docker wurde nicht im Pfad gefunden
In diesem Problem versucht ein Benutzer, ein Go auszuführen binär auf dem Docker-Image. Die Binärdatei wurde erfolgreich installiert, konnte jedoch im Pfad nicht gefunden werden. Dieses Problem hängt mit der fehlenden glibc in Alpine Linux zusammen, was dazu führt, dass das Programm seine Abhängigkeiten nicht findet.
Die Antwort auf dieses Problem besteht darin, einen symbolischen Link hinzuzufügen, der die libc von musl mit dem libc-Ersatz verknüpft, der von ld in der glibc benötigt wird. Dies kann mit der folgenden Dockerfile-Direktive erreicht werden:
RUN mkdir /lib64 && ln -s /lib/libc.musl-x86_64.so.1 /lib64/ld-linux-x86_64.so.2
Diese Direktive erstellt das Verzeichnis /lib64, falls es nicht existiert, und erstellt einen symbolischen Link, der die libc von musl mit dem libc-Ersatz verknüpft, der für ld in glibc erforderlich ist. Sobald dies erledigt ist, kann die Go-Binärdatei ihre Abhängigkeiten finden und im Pfad gefunden werden.
Das obige ist der detaillierte Inhalt vonWarum kann mein Go Binary seine Abhängigkeiten in meinem Alpine Linux Docker Image nicht finden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!