Einführung
Go ist eine Programmiersprache, die aus Frustration bei Google entstand. Entwickler standen ständig vor der Wahl: entweder eine Sprache, die zwar effizient lief, aber lange zum Kompilieren brauchte, oder eine Sprache, die zwar einfach zu programmieren, aber im Produktivbetrieb ineffizient war. Go wurde entwickelt, um alle drei Eigenschaften gleichzeitig zu vereinen: schnelle Kompilierung, einfache Programmierung und effiziente Ausführung im Produktivbetrieb.
Go ist eine vielseitige Programmiersprache, die sich für zahlreiche Projekte eignet, insbesondere aber für Netzwerk- und verteilte Systeme. Sie gilt daher als die “Sprache der Cloud”. Go unterstützt moderne Programmierer mit einem robusten Werkzeugsatz, minimiert Formatierungsdiskussionen durch die Integration der Formatierung in die Sprachspezifikation und vereinfacht die Bereitstellung durch die Kompilierung zu einer einzigen Binärdatei. Dank seiner geringen Anzahl an Schlüsselwörtern ist Go leicht zu erlernen und somit sowohl für Anfänger als auch für erfahrene Entwickler eine hervorragende Wahl.
Dieses Tutorial führt Sie durch die Installation und Konfiguration einer Go-Programmierumgebung über die Kommandozeile. Es beschreibt explizit die Installationsschritte für Ubuntu 18.04, die allgemeinen Prinzipien lassen sich jedoch auch auf andere Debian-basierte Linux-Distributionen anwenden.
Voraussetzungen
- Sie benötigen einen Computer oder eine virtuelle Maschine mit installiertem Ubuntu 18.04 sowie Administratorrechte für dieses Gerät und eine Internetverbindung.
Schritt 1 – Go einrichten
An dieser Stelle installieren Sie Go, indem Sie die aktuelle Version von der offiziellen Go-Downloadseite herunterladen.
Stellen Sie zunächst eine Verbindung zum Ubuntu-Server über SSH her:
ssh sammy@your_server_ip
Rufen Sie als Nächstes die offizielle Go-Downloadseite in Ihrem Webbrowser auf. Kopieren Sie dort die URL des aktuellen Binärarchivs (Tarball).
Zum Zeitpunkt der Erstellung dieses Dokuments ist die aktuellste Version go1.16.7. Um Go auf einem Ubuntu-Server (oder einem beliebigen Linux-Server) zu installieren, kopieren Sie die URL der Datei, die auf linux-amd64.tar.gz endet.
Nachdem Sie Ihren Link erstellt haben, überprüfen Sie zunächst, ob Sie sich im Hauptverzeichnis befinden:
cd Verwenden Sie anschließend curl, um das Tar-Archiv herunterzuladen. Ersetzen Sie dabei die markierte URL durch die soeben kopierte. Der Parameter -O sorgt dafür, dass die Ausgabe in eine Datei umgeleitet wird, und der Parameter L bewirkt eine HTTPS-Weiterleitung, da der Link von der Go-Website stammt und vor dem Herunterladen der Datei hierher weitergeleitet wird.
curl -OL https://golang.org/dl/go1.16.7.linux-amd64.tar.gz
Um die Echtheit der heruntergeladenen Datei zu überprüfen, führen Sie den Befehl sha256sum aus und übergeben Sie ihm den Dateinamen als Argument:
sha256sum go1.16.7.linux-amd64.tar.gz
Dies gibt die SHA256-Prüfsumme des Tarballs zurück:
Output
go1.16.7.linux-amd64.tar.gz
7fe7a73f55ba3e2285da36f8b085e5c0159e9564ef5f63ee0ed6b818ade8ef04 go1.16.7.linux-amd64.tar.gzWenn die Prüfsumme mit der auf der Downloadseite angegebenen übereinstimmt, haben Sie diesen Schritt korrekt ausgeführt.
Als Nächstes extrahieren Sie das Tar-Archiv mit `tar`. Dieser Befehl enthält die Option `-C`, die `tar` anweist, vor allen weiteren Operationen in das angegebene Verzeichnis zu wechseln. Das bedeutet, dass die extrahierten Dateien im Verzeichnis `/usr/local/` gespeichert werden, dem empfohlenen Installationsort für Go. Die Option `x` weist `tar` an, das Archiv zu extrahieren, `v` gibt die vollständige Ausgabe (eine Liste der extrahierten Dateien) an, und `f` legt einen Dateinamen fest.
sudo tar -C /usr/local -xvf go1.16.7.linux-amd64.tar.gz
Obwohl /usr/local/go der empfohlene Installationsort für Go ist, bevorzugen oder benötigen manche Benutzer möglicherweise andere Pfade.
Schritt 2 – Go-Pfade festlegen
In diesem Schritt ermitteln Sie die Pfade in Ihrer Umgebung.
Zuerst muss der Go-Root-Wert festgelegt werden, der Go mitteilt, wo es nach seinen Dateien suchen soll. Dies kann durch Bearbeiten der Datei .profile erfolgen, die eine Liste der Befehle enthält, die das System bei jeder Anmeldung ausführt.
Öffnen Sie die .profile-Datei, die sich im Benutzerverzeichnis befindet, mit Ihrem bevorzugten Editor. Wir verwenden hier nano:
sudo nano ~/.profile
Fügen Sie anschließend die folgenden Informationen am Ende Ihrer Datei hinzu:
. . .
export PATH=$PATH:/usr/local/go/binNachdem Sie diese Informationen zu Ihrem Profil hinzugefügt haben, speichern und schließen Sie die Datei. Wenn Sie nano verwenden, drücken Sie dazu Strg+X, dann Y und anschließend die Eingabetaste.
Aktualisieren Sie anschließend Ihr Profil, indem Sie folgenden Befehl ausführen:
source ~/.profile
Überprüfen Sie anschließend, ob Sie Go-Befehle ausführen können, indem Sie die Go-Version ausführen:
go version
Dieser Befehl gibt die Versionsnummer jeder auf Ihrem System installierten Go-Version aus:
Output
go version go1.16.7 linux/amd64Diese Ausgabe bestätigt, dass Go jetzt auf Ihrem Server läuft.
Schritt 3 – Installation testen
Nachdem Go installiert und die Pfade für Ihren Server eingerichtet wurden, können Sie Ihre Hello, World!-Anwendung erstellen, um sicherzustellen, dass Go funktioniert.
Erstellen Sie zunächst ein neues Verzeichnis für Ihren Go-Arbeitsbereich, in dem Go seine Dateien erstellen wird:
mkdir hello
Wechseln Sie anschließend in das von Ihnen erstellte Verzeichnis:
cd hello
Beim Importieren von Paketen müssen Sie die Abhängigkeiten über das Modul selbst verwalten. Dies können Sie tun, indem Sie mit dem Befehl `go mod init` eine `go.mod`-Datei erstellen:
go mod init your_domain/hello
Erstellen Sie als Nächstes eine Hello, World! Go-Datei in Ihrem bevorzugten Texteditor:
nano hello.go
Fügen Sie folgenden Text in Ihre hello.go-Datei ein:
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}Anschließend können Sie die Datei speichern und schließen, indem Sie STRG+X, dann Y und dann die Eingabetaste drücken.
Testen Sie Ihren Code, um sicherzustellen, dass er "Hallo Welt!" ausgibt. Gruß:
go run .
Output
Hello, World!Der Befehl `go run` kompiliert und führt das Go-Paket aus einer Liste von .go-Quelldateien im neu erstellten Verzeichnis `hello` und dem angegebenen Pfad aus. Alternativ können Sie auch `go build` verwenden, um eine ausführbare Datei zu erstellen, was Ihnen Zeit sparen kann.
Schritt 4 – Konvertieren Sie Ihren Go-Code in eine ausführbare Binärdatei.
Der Befehl `go run` wird häufig als Abkürzung zum Kompilieren und Ausführen von Programmen verwendet, die häufig geändert werden müssen. Wenn Sie Ihren Code fertiggestellt haben und ihn ausführen möchten, ohne ihn jedes Mal neu kompilieren zu müssen, können Sie mit `go build` Ihren Code in eine ausführbare Binärdatei umwandeln. Dabei wird Ihr Programm in einer einzigen Datei mit dem gesamten zum Ausführen der Binärdatei benötigten Code zusammengefasst. Sobald die ausführbare Binärdatei erstellt ist, können Sie mit `go install` Ihr Programm im Ausführungspfad ablegen, sodass Sie es von jedem beliebigen Ort auf Ihrem System ausführen können. Ihr Programm gibt dann auf Aufforderung „Hallo Welt!“ aus, und Sie müssen es nicht mehr kompilieren.
Probieren Sie es aus und führen Sie `go build` aus. Stellen Sie sicher, dass Sie dies im selben Verzeichnis ausführen, in dem sich Ihre Datei `hello.go` befindet:
go build
Führen Sie anschließend ./hello aus, um zu überprüfen, ob der Code korrekt funktioniert:
./hello
Output
Hello, World!Dies bestätigt, dass Sie Ihren hello.go-Code erfolgreich in eine ausführbare Binärdatei umgewandelt haben. Sie können diese Binärdatei jedoch nur innerhalb dieses Verzeichnisses aufrufen. Wenn Sie das Programm von einem anderen Ort auf Ihrem Server ausführen möchten, müssen Sie den vollständigen Pfad zur Binärdatei angeben.
Das Eintippen des vollständigen Pfads zu einer Binärdatei kann schnell mühsam werden. Alternativ können Sie den Befehl `go install` verwenden. Dieser ähnelt `go build`, legt die ausführbare Datei aber nicht im aktuellen Verzeichnis ab, sondern im Ordner `$GOPATH/bin`. Dadurch können Sie sie von jedem beliebigen Ort auf Ihrem Server ausführen.
Um `go install` erfolgreich auszuführen, müssen Sie den Installationspfad der Binärdateien angeben, den Sie mit `go build` erstellt haben. Um den Installationspfad der Binärdateien zu finden, führen Sie den folgenden Befehl `go list` aus:
go list -f ‘{{.Target}}’
`go list` erzeugt eine Liste aller Go-Pakete im aktuellen Arbeitsverzeichnis anhand ihres Namens. Der Parameter `-f` bewirkt, dass `go list` die Ausgabe in einem anderen Format zurückgibt, abhängig vom übergebenen Paketmuster. Mit dem Parameter `-f` wird das Muster `Target` verwendet, wodurch `go list` den Installationspfad jedes Pakets in diesem Verzeichnis zurückgibt.
Output
‘/home/sammy/go/bin/helloDies ist der Installationspfad der Binärdatei, die Sie mit go build erstellt haben. Das heißt, das Verzeichnis, in dem diese Binärdatei installiert wird, ist /home/sammy/go/bin/.
Fügen Sie dieses Installationsverzeichnis zu Ihrem Systempfad hinzu. Achten Sie darauf, den markierten Teil dieses Befehls an das Installationsverzeichnis der Binärdateien auf Ihrem System anzupassen, falls dieses abweicht:
export PATH=$PATH:/home/sammy/go/bin/
Führen Sie abschließend den Befehl „go install“ aus, um das Paket zu kompilieren und zu installieren:
go install
Führen Sie diese ausführbare Datei aus, indem Sie einfach „hello“ eingeben.
hello
Output
Hello, World!Wenn Sie die Ausgabe „Hello, World!“ erhalten, haben Sie Ihre Go-Anwendung erfolgreich von einem angegebenen und einem nicht angegebenen Pfad auf Ihrem Server ausführbar gemacht.
Ergebnis
Durch das Herunterladen und Installieren des neuesten Go-Pakets und das Festlegen der Pfade verfügen Sie nun über ein System für die Go-Entwicklung. Weitere Artikel zur Installation und Verwendung von Go finden Sie unter dem Tag «Go». Abonnieren Sie unseren Newsletter!









