Build und Startbefehl
Gebaut wird mit:
CGO_ENABLED=0 go build -o server .
Gestartet wird mit:
./server
Dazu gehört diese Konfiguration:
port := os.Getenv("PORT")
if port == "" { port = "8080" }
r.Run("0.0.0.0:" + port)
Worauf du achten musst
CGO_ENABLED=0erzeugt eine Datei ohne Systembibliotheken – sie läuft dann sogar in einem leeren Abbild.- Den Modus auf
releasesetzen (GIN_MODE=release), sonst protokolliert Gin wie in der Entwicklung. - Sehr kleiner Speicherbedarf: Die kleinste Größe reicht für die meisten APIs.
- Zeitlimits für Lesen und Schreiben setzen – der Standard ist unbegrenzt, das ist im Internet keine gute Idee.
Größe und Kosten
Empfohlen ist Größe S (512 MB, 0.5 Kerne) – im Dauerbetrieb rund 7,82 € im Monat. Abgerechnet wird sekundengenau, eine gestoppte App kostet nichts. Die Größe lässt sich jederzeit wechseln, die App startet dabei einmal neu. Alle Preise
Häufige Fragen
Was ist mit Fiber, Echo oder Chi?
Alles gilt genauso: bauen, Port aus der Umgebung, auf 0.0.0.0 hören. Die Rahmenwerke unterscheiden sich im Betrieb kaum.
Wie klein wird das Abbild?
Mit mehrstufigem Build und leerem Basis-Abbild wenige Megabyte – Deployments sind entsprechend schnell.