ホームページ  >  記事  >  バックエンド開発  >  Alpine Docker イメージで「go version」が失敗するのはなぜですか?

Alpine Docker イメージで「go version」が失敗するのはなぜですか?

DDD
DDDオリジナル
2024-11-26 00:29:10583ブラウズ

Why does

Alpine Linux Docker イメージへの Go のインストール: パスの問題

Alpine Docker イメージ内に Go をインストールしようとすると、エラー ( 「go version」コマンドを実行すると、「sh: go: not found」と表示されます。この問題は、PATH 変数の設定が正しくないために発生します。

この問題を修正するには、以下に示すように、Go バイナリが配置されているディレクトリを含むように PATH 変数を設定するのが正しい方法です。

export PATH=/usr/local/go/bin:$PATH

エラーを再現するために提供されている手順では、PATH 変数が間違ったディレクトリ (/usr/local/go/、Go バイナリを含まない) を含むように設定されています。次のように修正する必要があります:

export PATH=/usr/local/go/bin:$PATH

この問題を解決するには、マルチステージ ビルドを使用することもできます。マルチステージ ビルドの例を次に示します。

FROM XXX  # Your base image
FROM golang:1.13-alpine
COPY --from=golang:1.13-alpine /usr/local/go/ /usr/local/go/
ENV PATH="/usr/local/go/bin:${PATH}"

このマルチステージ ビルドでは、Go インストールを golang:1.13-alpine イメージから最終イメージにコピーし、PATH 変数が正しく設定されていることを確認します。

以上がAlpine Docker イメージで「go version」が失敗するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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