Heim >Backend-Entwicklung >Golang >So stellen Sie Golang-Anwendungen auf dem Linux-Betriebssystem bereit

So stellen Sie Golang-Anwendungen auf dem Linux-Betriebssystem bereit

PHPz
PHPzOriginal
2023-04-14 09:33:521000Durchsuche

In der heutigen Softwareentwicklung nimmt der Anteil der Verwendung von Linux als Betriebssystem zu, und die Golang-Sprache wird aufgrund ihrer Effizienz, Einfachheit und Parallelitätsleistung von immer mehr Entwicklern bevorzugt. In diesem Artikel stellen wir vor, wie Golang-Anwendungen auf dem Linux-Betriebssystem bereitgestellt werden.

  1. Golang-Umgebung installieren

Bevor wir mit der Bereitstellung von Golang-Programmen beginnen, müssen wir zuerst die Golang-Umgebung installieren. Laden Sie zunächst das Golang-Binärinstallationspaket herunter. Sie können die neueste Version des Binärinstallationspakets von der offiziellen Website herunterladen: https://golang.org/dl/.

Nach dem Herunterladen dekomprimieren Sie die Datei und verschieben den dekomprimierten Ordner in das Verzeichnis /usr/local:

$ tar -C /usr/local -xzf go1 .17.2.linux -amd64.tar.gz

Als nächstes legen Sie die Umgebungsvariablen fest und fügen /usr/local/go/bin zu PATH hinzu:

$ export PATH= $PATH:/usr /local/go/bin

Um zu überprüfen, ob die Golang-Umgebung korrekt installiert ist, können Sie den folgenden Befehl verwenden:

$ go version

#🎜 🎜 #Wenn Golang-Versionsinformationen zurückgegeben werden, bedeutet dies, dass die Golang-Umgebung korrekt installiert wurde.

    Eine Golang-Anwendung schreiben
Bevor Sie mit der Bereitstellung einer Golang-Anwendung beginnen, müssen Sie zunächst eine Golang-Anwendung schreiben. Hier nehmen wir einen einfachen HTTP-Dienst als Beispiel:

package main

import (
    "fmt"
    "net/http"
)

func main() {
    http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
        fmt.Fprintf(w, "Hello, World!")
    })

    http.ListenAndServe(":8080", nil)
}
Dieses Programm startet einen HTTP-Dienst auf dem lokalen Port 8080. Besuchen Sie http://localhost:8080 im Browser und Sie können die Ausgabe von Hello, World! sehen.

    Golang-Programm erstellen
Nachdem Sie das Golang-Programm geschrieben haben, müssen Sie es erstellen. Verwenden Sie zum Erstellen den folgenden Befehl:

$ go build

Dieser Befehl kompiliert das Programm in eine ausführbare Datei. Nach der Ausführung wird im aktuellen Verzeichnis eine Datei mit dem Namen main generiert.

    Golang-Programm bereitstellen
Die Golang-Anwendungsbereitstellung kann auf zwei Arten erfolgen:

4.1 Direkt ausführen Ausführbare Datei

Der einfachste Weg ist, die ausführbare Datei direkt auszuführen. Führen Sie den folgenden Befehl aus:

$ ./main

Dieser Befehl startet die Golang-Anwendung und startet den HTTP-Dienst auf dem lokalen Port 8080.

Diese Methode weist jedoch einige Mängel auf, z. B. die Unfähigkeit, nach dem Absturz des Programms automatisch neu zu starten, die Unfähigkeit, eine Clusterbereitstellung durchzuführen usw.

4.2 Verwenden Sie systemd zur Verwaltung

Um die oben genannten Probleme zu lösen, können Sie systemd zum Verwalten von Golang-Programmen verwenden. systemd ist ein System- und Dienstmanager unter Linux-Systemen. Wir können systemd verwenden, um Golang-Programme als Systemdienst auszuführen.

Erstellen Sie zunächst eine Dienstkonfigurationsdatei mit dem Namen myapp.service und kopieren Sie den folgenden Inhalt in die Datei:

[Unit]
Description=My Golang App
After=syslog.target network.target

[Service]
Type=simple
ExecStart=/usr/local/golang/bin/myapp
Restart=on-failure

[Install]
WantedBy=multi-user.target
Diese Konfigurationsdatei beschreibt den Dienst, den wir ausführen möchten. Er heißt My Golang App und wird neu gestartet, wenn ein Problem mit dem Programm auftritt.

Als nächstes speichern Sie die Datei im Verzeichnis /etc/systemd/system und laden die Systemd-Konfiguration mit dem folgenden Befehl neu:

$ systemctl daemon-reload

# 🎜🎜# Starten Sie dann den Dienst mit dem folgenden Befehl:

$ systemctl start myapp

Überprüfen Sie den Dienststatus mit dem folgenden Befehl:

$ systemctl status myapp

Wenn alles normal ist, sollte das Laufergebnis „aktiv“ (wird ausgeführt) anzeigen.

Verwenden Sie abschließend den folgenden Befehl, um den Dienst automatisch zu starten:

$ systemctl enable myapp

Zu diesem Zeitpunkt haben wir einen Golang erfolgreich bereitgestellt Programm und verwalten Sie das Programm mit systemd.

Zusammenfassung

In diesem Artikel wird beschrieben, wie Golang-Anwendungen auf dem Linux-Betriebssystem bereitgestellt werden. Zuerst haben wir die Golang-Umgebung installiert, dann ein einfaches HTTP-Dienstprogramm geschrieben und es dann mit dem Befehl go build erstellt. Abschließend haben wir zwei Bereitstellungsmethoden eingeführt: die direkte Ausführung der ausführbaren Datei und die Verwendung von systemd zur Verwaltung. Ich hoffe, dass dieser Artikel Entwicklern helfen kann, Golang-Programme erfolgreich bereitzustellen.

Das obige ist der detaillierte Inhalt vonSo stellen Sie Golang-Anwendungen auf dem Linux-Betriebssystem bereit. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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