Alpine Linux Docker にインストールされた Go バイナリがパスに見つかりませんでした
この問題では、ユーザーが Go を実行しようとしていますDocker イメージ上のバイナリ。バイナリは正常にインストールされましたが、パス内に見つかりませんでした。この問題は、Alpine Linux に欠落している glibc に関連しており、プログラムがその依存関係を検出できなくなります。
この問題に対する答えは、musl の libc を、glibc の ld で必要な libc 置換にリンクするシンボリック リンクを追加することです。これは、次の Dockerfile ディレクティブで実現できます。
RUN mkdir /lib64 && ln -s /lib/libc.musl-x86_64.so.1 /lib64/ld-linux-x86_64.so.2
このディレクティブは、 /lib64 ディレクトリが存在しない場合はそれを作成し、 musl の libc を glibc の ld に必要な libc 置換にリンクするシンボリック リンクを作成します。これが完了すると、Go バイナリはその依存関係を見つけてパス内で見つかるようになります。
以上がGo Binary が Alpine Linux Docker イメージで依存関係を見つけられないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。