Heim > Backend-Entwicklung > Golang > Warum erhalte ich beim Erstellen eines Docker-Images die Fehlermeldung „Der Importpfad beginnt nicht mit dem Hostnamen'?

Warum erhalte ich beim Erstellen eines Docker-Images die Fehlermeldung „Der Importpfad beginnt nicht mit dem Hostnamen'?

Mary-Kate Olsen
Freigeben: 2024-11-03 16:57:30
Original
543 Leute haben es durchsucht

Why Am I Receiving a

Docker-Build-Fehler: „Importpfad beginnt nicht mit Hostname“

Beim Versuch, ein Docker-Image mithilfe eines lokalen Pakets zu erstellen, stoßen Benutzer möglicherweise auf den Fehler „import Pfad beginnt nicht mit Hostname.“ Dieses Problem tritt auf, wenn eine Docker-Datei erstellt wird, die ein lokales Paket als Abhängigkeit verwenden soll.

Für eine einfache Docker-Datei erstellen Benutzer normalerweise eine Datei ähnlich der folgenden:

FROM golang:onbuild
EXPOSE 8080
Nach dem Login kopieren

Dieses Format folgt dem Ansatz, der im Artikel „Bereitstellen von Go-Servern mit Docker“ beschrieben wird. Bei der Integration von Code aus „git-go-websiteskeleton“ als Build-Quelle kann der folgende Fehler auftreten:

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"
Nach dem Login kopieren

Die zugrunde liegende Ursache besteht darin, dass der Anwendungsbuild innerhalb des Docker-Containers erfolgt und erfordert, dass auf Abhängigkeiten zugegriffen werden kann während des gesamten Prozesses.

Um diesen Fehler zu beheben, gehen Sie über die grundlegende Syntax von „golang:onbuild“ hinaus. Erstellen Sie eine benutzerdefinierte Docker-Datei mit detaillierten Schritten zum Erstellen Ihrer Anwendung. Passen Sie den Inhalt basierend auf den Besonderheiten Ihres Projekts an und verwenden Sie möglicherweise eine Struktur wie:

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
Nach dem Login kopieren

Dadurch wird die Docker-Datei so geändert, dass Ihr Quellcode und Ihre Abhängigkeit in den Container integriert werden. Anschließend erstellt es Ihre Anwendung, initiiert deren Ausführung und weist Port 8080 für den externen Zugriff zu.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich beim Erstellen eines Docker-Images die Fehlermeldung „Der Importpfad beginnt nicht mit dem Hostnamen'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage