Zum Hauptinhalt springen

Go

Die Deploio-Build-Umgebung nutzt das Heroku Go Cloud Native Buildpack.

Beispiel-App

Eine einfache Go App zeigen wir in unserem Beispiele-Repository. Sie können diese mit nctl deployen:

nctl create application go \
--git-url=https://github.com/ninech/deploio-examples \
--git-sub-path=go

App-Anforderungen

Jedes Go-Projekt, welches die folgenden Kriterien erfüllt, sollte buildbar sein:

  • Eine go.mod-Datei befindet sich im Hauptverzeichnis des Projekts.
  • Die App kompiliert mit Go 1.16 oder höher.
  • Die App verwendet Go-Module für die Installation aller Abhängigkeiten.

Go-Version-Erkennung

Die Go-Version wird aus der go-Zeile in der go.mod gelesen. Dies ist wahrscheinlich für die meisten Apps korrekt, aber eine andere Version kann mithilfe einer Build-Anweisung in der go.mod-Datei ausgewählt werden.

Mehrere Binärdateien

Der Build-Prozess erstellt alle im Projekt gefundenen Main-Pakete. Wenn Sie mehrere Pakete haben, müssen Sie möglicherweise den gewünschten App-Eintrittspunkt mit einem Procfile definieren. Befindet sich Ihre main.go-Datei beispielsweise in einem Verzeichnis namens server, sollte das Procfile so aussehen:

web: server

Dies führt dazu, dass die Binärdatei server als App-Eintrittspunkte ausgeführt wird.

Wenn Sie nur selektive Pakete bauen möchten, können Sie dafür eine Anweisung in der go.mod-Datei verwenden.