Maison  >  Article  >  développement back-end  >  Pourquoi est-ce que je reçois une erreur « Le chemin d'importation ne commence pas par le nom d'hôte » lors de la création d'une image Docker ?

Pourquoi est-ce que je reçois une erreur « Le chemin d'importation ne commence pas par le nom d'hôte » lors de la création d'une image Docker ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-03 16:57:30514parcourir

Why Am I Receiving a

Erreur de construction Docker : « Le chemin d'importation ne commence pas par le nom d'hôte »

Lors de la tentative de construction d'une image Docker à l'aide d'un package local, les utilisateurs peuvent rencontrer l'erreur « importer le chemin ne commence pas par le nom d'hôte." Ce problème survient lors de la création d'un Dockerfile, dans le but d'utiliser un package local comme dépendance.

Pour un Dockerfile simple, les utilisateurs créent généralement un fichier similaire à :

FROM golang:onbuild
EXPOSE 8080

Ce format suit le approche décrite dans l'article « Déploiement de serveurs Go avec Docker ». Lors de l'intégration du code de "git-go-websiteskeleton" comme source de build, l'erreur suivante peut apparaître :

import "git-go-websiteskeleton/app/common": import path does not begin with hostname
package git-go-websiteskeleton/app/common: unrecognized import path "git-go-websiteskeleton/app/common"
import "git-go-websiteskeleton/app/home": import path does not begin with hostname
package git-go-websiteskeleton/app/home: unrecognized import path "git-go-websiteskeleton/app/home"
import "git-go-websiteskeleton/app/user": import path does not begin with hostname
package git-go-websiteskeleton/app/user: unrecognized import path "git-go-websiteskeleton/app/user"

La cause sous-jacente est que la construction de l'application se produit dans le conteneur Docker, exigeant que les dépendances soient accessibles tout au long du processus.

Pour rectifier cette erreur, allez au-delà de la syntaxe de base de "golang:onbuild". Composez un Dockerfile personnalisé avec des étapes détaillées pour créer votre application. Ajustez le contenu en fonction des spécificités de votre projet, en utilisant potentiellement une structure telle que :

FROM golang:1.6
ADD . /go/src/yourapplication
RUN go get github.com/jadekler/git-go-websiteskeleton
RUN go install yourapplication
ENTRYPOINT /go/bin/yourapplication
EXPOSE 8080

Cela modifie le Dockerfile pour incorporer votre code source et vos dépendances dans le conteneur. Par la suite, il construit votre application, lance son exécution et désigne le port 8080 pour l'accès externe.

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