Maison  >  Article  >  développement back-end  >  Pourquoi la « version Go » échoue-t-elle dans une image Alpine Docker ?

Pourquoi la « version Go » échoue-t-elle dans une image Alpine Docker ?

DDD
DDDoriginal
2024-11-26 00:29:10580parcourir

Why does

Installation de Go dans des images Alpine Linux Docker : un problème de chemin

Lors d'une tentative d'installation de Go dans une image Alpine Docker, une erreur ( "sh: go: not found") apparaît lors de l'exécution de la commande "go version". Ce problème est dû à une configuration incorrecte de la variable PATH.

Pour résoudre ce problème, l'approche correcte consiste à définir la variable PATH pour inclure le répertoire où se trouve le binaire Go, comme indiqué ci-dessous :

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

Dans les étapes fournies pour reproduire l'erreur, la variable PATH est définie pour inclure le mauvais répertoire (/usr/local/go/, qui ne contient pas le binaire Go) et doit être corrigée vers le suivant :

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

Alternativement, des builds en plusieurs étapes peuvent être utilisées pour résoudre ce problème. Voici un exemple de build en plusieurs étapes :

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}"

Cette build en plusieurs étapes copie l'installation Go de l'image golang:1.13-alpine dans l'image finale, garantissant que la variable PATH est correctement définie.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn