Maison >développement back-end >Golang >Explication détaillée de la méthode de déploiement du serveur Golang

Explication détaillée de la méthode de déploiement du serveur Golang

PHPz
PHPzoriginal
2024-01-16 10:11:091458parcourir

Explication détaillée de la méthode de déploiement du serveur Golang

Golang est un langage de programmation qui a attiré beaucoup d'attention ces dernières années. Il présente les avantages d'une concurrence élevée et d'une efficacité d'exécution rapide. De plus en plus d'entreprises commencent à utiliser Golang pour développer des applications back-end. sur le serveur La méthode de déploiement a également attiré beaucoup d'attention. Cet article présentera en détail la méthode de déploiement de Golang sur le serveur et joindra des exemples de code spécifiques.

1. Préparation

Avant le déploiement de Golang, vous devez télécharger et installer Golang. Si vous n'avez pas installé Golang, vous pouvez le télécharger et l'installer depuis le site officiel de Golang (https://golang.org/dl/).

De plus, vous devez également configurer votre environnement serveur. Si vous utilisez un serveur Linux, il est recommandé d'installer systemd pour gérer vos services. Si vous utilisez un serveur Windows, vous pouvez utiliser les services Windows pour gérer vos services dans les étapes suivantes.

2. Écrire une application Golang

Avant de déployer Golang, vous devez d'abord écrire une application Golang. Voici un exemple de code pour une application Golang simple :

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)
}

Cette application démarre simplement un serveur HTTP, écoute sur le port 8080 et renvoie la chaîne "Hello, World!" lorsque le client y accède.

3. Compilez l'application

Une fois l'écriture de l'application terminée, vous devez la compiler dans un fichier exécutable. Vous pouvez utiliser la commande suivante pour compiler l'application à l'étape précédente :

GOOS=linux GOARCH=amd64 go build -o app main.go

Cette commande compile l'application dans un fichier exécutable pour le système Linux, qui peut être exécuté directement sur le serveur Linux.

Remarque : si vous compilez une application pour le système Windows, vous pouvez remplacer GOOS par Windows pour compiler un fichier exécutable pour le système Windows.

4. Déployer l'application

Maintenant que nous avons écrit et compilé l'application Golang, nous pouvons la déployer sur notre serveur.

  1. Téléchargez le fichier exécutable sur le serveur

Tout d'abord, vous devez télécharger le fichier exécutable sur le serveur. Ceci peut être réalisé en utilisant la commande scp :

scp app root@[服务器IP地址]:/opt/app/
  1. Créer et exécuter le service systemd

Ensuite, nous créerons un service systemd pour gérer les applications Golang.

Ouvrez un terminal sur le serveur et entrez la commande suivante :

sudo nano /etc/systemd/system/app.service

Cette commande créera un fichier nommé "app.service". Dans ce fichier, le contenu suivant sera écrit :

[Unit]
Description=My Go Application

[Service]
ExecStart=/opt/app/app
Restart=always
User=root
WorkingDirectory=/opt/app

[Install]
WantedBy=multi-user.target

La signification de ce fichier est la suivante :

  • [Unité] : Décrivez les informations de base du service.
  • Description : informations de description du service.
  • [Service] : Spécifiez les informations de configuration spécifiques du service.
  • ExecStart : Spécifiez la commande ou le fichier exécutable à exécuter.
  • Redémarrer : Spécifiez le service pour qu'il redémarre automatiquement lorsqu'il se termine anormalement.
  • Utilisateur : spécifiez l'utilisateur pour exécuter le service.
  • WorkingDirectory : Spécifiez le répertoire de travail lorsque le service est en cours d'exécution.
  • [Installer] : Spécifie comment installer ce service.
  • WantedBy : indique quelle cible le service doit être démarré lorsque le système l'exécute.

Enregistrez et fermez le fichier, puis suivez les commandes suivantes pour démarrer et gérer le service :

sudo systemctl daemon-reload
sudo systemctl start app
sudo systemctl enable app

La première commande est utilisée pour recharger les informations du fichier de configuration du système, la deuxième commande est utilisée pour démarrer le service et la troisième La commande est utilisée pour Le service est configuré pour démarrer automatiquement au démarrage.

5. Testez l'application

Maintenant que nous avons déployé avec succès l'application Golang sur le serveur, vous pouvez utiliser un navigateur ou une commande curl pour tester le fonctionnement de l'application :

curl http://[服务器IP地址]:8080

Si tout se passe bien, vous verrez le Chaîne « Bonjour, Monde ! » sur la ligne de commande.

6. Résumé

Ce qui précède est le processus détaillé de déploiement des applications Golang sur le serveur à l'aide de systemd. Le déploiement de Golang côté serveur est très simple. Il vous suffit d'abord d'écrire une application Golang, puis d'utiliser les services systemd ou Windows pour gérer vos services. J'espère que cet article sera utile aux développeurs qui apprennent Golang et déploient Golang côté serveur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn