Heim > Backend-Entwicklung > Golang > Warum schlägt meine Go Docker-Webanwendung mit der Fehlermeldung „Keine solche Datei oder kein solches Verzeichnis' fehl?

Warum schlägt meine Go Docker-Webanwendung mit der Fehlermeldung „Keine solche Datei oder kein solches Verzeichnis' fehl?

Barbara Streisand
Freigeben: 2024-12-16 21:43:14
Original
177 Leute haben es durchsucht

Why Does My Go Docker Web App Fail with a

Docker mit Go Basic Web App ausführen: Fehler „Keine solche Datei oder kein solches Verzeichnis“

Beim Versuch, eine einfache Webanwendung in Go auszuführen Bei Verwendung von Docker kann bei Benutzern der folgende Fehler auftreten:

standard_init_linux.go:190: exec user process caused "no such file or directory"
Nach dem Login kopieren

Dieser Fehler tritt auf, weil in der ausführbaren Binärdatei für die Webanwendung eine erforderliche Bibliothek fehlt oder Dolmetscher. In diesem speziellen Fall fehlt die libc-Bibliothek, die standardmäßig dynamisch mit der Binärdatei verknüpft wird, wenn das Netzpaket importiert wird.

Um dieses Problem zu beheben, können die folgenden Schritte unternommen werden:

  1. Kompilieren Sie die Binärdatei mit Cross-Compilation-Flags:

    CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -a -tags netgo -ldflags '-w' -o mybin *.go
    Nach dem Login kopieren

    Diese Flags deaktivieren die Kreuzkompilierung, geben das Zielbetriebssystem und die Zielarchitektur an und entfernen Debugging-Informationen aus der Binärdatei.

  2. Verwenden Sie die kompilierte Binärdatei im Docker-Image:

    Ersetzen Sie die CMD-Anweisung in der Docker-Datei durch die Folgendes:

    CMD ["mybin"]
    Nach dem Login kopieren

Durch Befolgen dieser Schritte kann der Benutzer die Go-Webanwendungsbinärdatei korrekt kompilieren, die erforderlichen Bibliotheken verknüpfen und den Fehler „Keine solche Datei oder kein solches Verzeichnis“ beseitigen, wenn Ausführen der Anwendung in einem Docker-Container.

Das obige ist der detaillierte Inhalt vonWarum schlägt meine Go Docker-Webanwendung mit der Fehlermeldung „Keine solche Datei oder kein solches Verzeichnis' fehl?. 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