首頁 >後端開發 >Golang >為什麼在 Alpine Linux 上安裝 Go 時會出現「go: not found」錯誤?

為什麼在 Alpine Linux 上安裝 Go 時會出現「go: not found」錯誤?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-16 09:53:03936瀏覽

Why is

在Alpine Linux 上安裝Go

由於與其他容器相比系統結構存在差異,在Alpine Linux Docker 容器中安裝Go 可能具有挑戰性Linux 發行版。一個常見問題是嘗試執行命令時可能找不到下載的 Go 二進位。

問題:

如所提供的上下文中所述,用戶遇到了問題在Alpine Docker 映像中安裝Go 並在執行「go version」指令時遇到錯誤「sh: go: not found」。安裝 Go 的步驟包括下載 tar 檔案、解壓縮它以及修改 PATH 環境變數以包含 Go 二進位檔案的位置。

解決方案:

建議解決方案涉及使用多階段構建從預先建置的 Golang Docker 映像複製 Go 安裝。以下是所提供解決方案的細分:

FROM XXX

COPY --from=golang:1.13-alpine /usr/local/go/ /usr/local/go/

ENV PATH="/usr/local/go/bin:${PATH}"

在此解決方案中:

  1. FROM XXX:指定第一個建置階段的基礎映像。該鏡像可以是任何合適的 Alpine Linux 鏡像。
  2. COPY --from=golang:1.13-alpine /usr/local/go/ /usr/local/go/:從官方Golang Docker 複製Go 安裝image (golang:1.13-alpine) 到第一個建造階段的鏡像中。
  3. ENV PATH="/usr/local/go/bin:${PATH}":修改第二個建置階段的 PATH 環境變數(產生的圖片)以包含 Go 二進位檔案的位置。

以上是為什麼在 Alpine Linux 上安裝 Go 時會出現「go: not found」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn