ホームページ >バックエンド開発 >Golang >Docker 化された Alpine Linux 環境にインストールが成功したにもかかわらず、Go バイナリが PATH に見つからないのはなぜですか?

Docker 化された Alpine Linux 環境にインストールが成功したにもかかわらず、Go バイナリが PATH に見つからないのはなぜですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-02 10:15:11788ブラウズ

Why Isn't My Go Binary Found in the PATH Despite Successful Installation in a Dockerized Alpine Linux Environment?

Docker の問題: Alpine Linux のパスにインストールされた Go バイナリが見つかりません

Alpine Linux を使用する Docker 環境で、 Docker Go バイナリ以外の場合、「見つかりません」というエラー メッセージが表示されます。バイナリは /usr/local/bin/ にインストールされ、そのパスはシステムの PATH 変数に含まれています。

この問題は、Docker Go バイナリのインストールと実行が成功したにもかかわらず発生します。どちらのバイナリも、curl および chmod コマンドを使用してインストールされます。

考えられる解決策

このエラーは、ライブラリの依存関係が欠落しているため、バイナリがシステムによって認識されていないことを示しています。 。これを解決するには、Go バイナリをインストールする前に次のコマンドを Dockerfile に追加します。

RUN mkdir /lib64 && ln -s /lib/libc.musl-x86_64.so.1 /lib64/ld-linux-x86-64.so.2

このコマンドは、musl ライブラリと glibc ライブラリの間にシンボリック リンクを作成し、必要な依存関係を Go バイナリで利用できるようにします。 .

以上がDocker 化された Alpine Linux 環境にインストールが成功したにもかかわらず、Go バイナリが PATH に見つからないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。