Docker : Récupération à partir de référentiels GitHub privés à l'aide de "go get"
Lors de la tentative d'exécution d'un conteneur hébergeant un service Golang à partir d'un GitHub privé dépôt, vous pourriez rencontrer des difficultés si vous utilisez l'image google/debian:wheezy comme point de départ. Cette erreur survient lorsque "go get" tente de cloner le référentiel.
Le problème provient de difficultés de clonage du référentiel privé en raison de problèmes de validation de clé SSH. Notamment, bien que vous ayez ajouté les clés SSH GitHub au Dockerfile pour autoriser le clonage, il semble y avoir un problème de validation de la clé publique.
Pour résoudre ce problème, envisagez la solution suivante :
RUN apt-get update && apt-get install -y ca-certificates git-core ssh
ADD keys/my_key_rsa /root/.ssh/id_rsa
RUN chmod 700 /root/.ssh/id_rsa
RUN echo "Host github.com\n\tStrictHostKeyChecking no\n" >> /root/.ssh/config
RUN git config --global url.ssh://[email protected]/.insteadOf https://github.com/
ADD . /go/src/github.com/myaccount/myprivaterepo
RUN go get github.com/myaccount/myprivaterepo RUN go install github.com/myaccount/myprivaterepo
Cette solution implique l'installation de SSH et la création d'une clé privée dans le conteneur. Bien qu'il ne soit pas idéal, il fournit une solution de contournement au problème de récupération de référentiels privés à l'aide de "go get" dans un environnement Docker basé sur Debian Wheezy.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3