la programmation

Guide déploiement Go avec Nginx

Pour publier une application web écrite en Go et utilisant un serveur Nginx sur Ubuntu 18.04, vous avez besoin de suivre plusieurs étapes. Voici un guide détaillé pour vous aider à accomplir cette tâche :

  1. Prérequis :
    Assurez-vous d’avoir accès à une machine Ubuntu 18.04 avec une connexion Internet et des privilèges d’administration (sudo).

  2. Installer Go :
    Commencez par installer Go sur votre serveur Ubuntu. Vous pouvez le faire en téléchargeant l’archive depuis le site officiel de Go, en extrayant le contenu et en configurant les variables d’environnement.

    bash
    wget https://golang.org/dl/go1.XX.X.linux-amd64.tar.gz sudo tar -C /usr/local -xzf go1.XX.X.linux-amd64.tar.gz export PATH=$PATH:/usr/local/go/bin

    Assurez-vous de remplacer « XX.X » par la version actuelle de Go.

  3. Configurer votre GOPATH :
    Créez un répertoire pour votre code Go et définissez la variable d’environnement GOPATH.

    bash
    mkdir ~/go export GOPATH=~/go
  4. Installer Nginx :
    Utilisez apt pour installer Nginx sur Ubuntu.

    bash
    sudo apt update sudo apt install nginx
  5. Écrire votre application Go :
    Créez votre application Go dans un répertoire de votre choix. Assurez-vous qu’elle écoute sur un port spécifique (par exemple, 8080).

  6. Compiler votre application Go :
    Compilez votre application Go pour qu’elle puisse être exécutée sur votre serveur Ubuntu. Vous pouvez le faire à l’aide de la commande go build.

    bash
    cd chemin/vers/votre/application go build -o nom_de_votre_application
  7. Configurer Nginx pour agir en tant que proxy inverse :
    Créez un fichier de configuration pour votre application dans le répertoire /etc/nginx/sites-available/.

    bash
    sudo nano /etc/nginx/sites-available/votre_application

    Voici un exemple de configuration pour votre application Go :

    perl
    server { listen 80; server_name votre_domaine.com; location / { proxy_pass http://localhost:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }

    N’oubliez pas de remplacer votre_domaine.com par votre nom de domaine réel et 8080 par le port sur lequel votre application Go écoute.

  8. Activer votre configuration Nginx :
    Créez un lien symbolique vers le répertoire sites-enabled pour activer votre configuration Nginx.

    bash
    sudo ln -s /etc/nginx/sites-available/votre_application /etc/nginx/sites-enabled/
  9. Redémarrer Nginx :
    Redémarrez Nginx pour appliquer les modifications de configuration.

    bash
    sudo systemctl restart nginx
  10. Configurer le pare-feu (facultatif) :
    Si vous utilisez un pare-feu sur votre serveur, assurez-vous d’autoriser le trafic sur le port que vous avez spécifié pour votre application Go (par exemple, le port 8080) et sur le port 80 pour le trafic HTTP.

  11. Tester votre application :
    Accédez à votre site web à l’aide du navigateur en utilisant le nom de domaine que vous avez configuré. Assurez-vous que votre application Go est correctement chargée via Nginx.

Ces étapes devraient vous permettre de déployer avec succès votre application web Go sur un serveur Ubuntu 18.04 avec Nginx en tant que serveur web. Assurez-vous de suivre attentivement chaque étape pour éviter les erreurs et les problèmes de configuration.

Plus de connaissances

Bien sûr, je vais approfondir chaque étape pour vous fournir des informations plus détaillées :

  1. Prérequis :
    Avant de commencer, assurez-vous d’avoir une machine Ubuntu 18.04 à disposition avec un accès administrateur. Vous pouvez utiliser un serveur dédié, une machine virtuelle ou un service cloud comme AWS, Google Cloud ou DigitalOcean.

  2. Installer Go :
    Go, également connu sous le nom de Golang, est un langage de programmation open source développé par Google. Vous pouvez l’installer en téléchargeant l’archive depuis le site officiel de Go et en suivant les instructions d’installation. Assurez-vous de choisir la version compatible avec votre système d’exploitation.

  3. Configurer votre GOPATH :
    GOPATH est un chemin d’accès où Go recherche les packages et enregistre les binaires après la compilation. Par défaut, il est généralement défini sur $HOME/go (c’est-à-dire /home/votre_utilisateur/go). Vous pouvez personnaliser cet emplacement selon vos préférences en définissant la variable d’environnement GOPATH.

  4. Installer Nginx :
    Nginx est un serveur web et proxy inverse populaire, connu pour sa haute performance, sa stabilité et sa capacité à gérer de gros volumes de trafic. Vous pouvez l’installer via le gestionnaire de packages apt d’Ubuntu. Après l’installation, Nginx démarre automatiquement et écoute sur le port 80 par défaut.

  5. Écrire votre application Go :
    Vous pouvez utiliser n’importe quel éditeur de texte ou IDE de votre choix pour écrire votre application Go. Assurez-vous d’importer les packages nécessaires et d’écrire le code pour votre application web. Vous pouvez utiliser des frameworks web comme Gin, Echo ou Goji pour simplifier le processus de développement.

  6. Compiler votre application Go :
    La commande go build est utilisée pour compiler votre application Go en un exécutable binaire. Assurez-vous de spécifier le nom de votre application avec l’option -o. Après la compilation, vous obtiendrez un fichier exécutable que vous pourrez exécuter sur votre serveur.

  7. Configurer Nginx pour agir en tant que proxy inverse :
    Nginx agit en tant que proxy inverse pour rediriger le trafic HTTP vers votre application Go. Dans la configuration Nginx, vous spécifiez le nom du serveur et le port sur lequel votre application écoute. Vous pouvez également configurer des en-têtes HTTP pour transmettre des informations utiles à votre application.

  8. Activer votre configuration Nginx :
    Après avoir créé le fichier de configuration pour votre application dans le répertoire sites-available, vous devez créer un lien symbolique vers le répertoire sites-enabled pour activer la configuration. Cela permet à Nginx de prendre en compte votre configuration lors du redémarrage.

  9. Redémarrer Nginx :
    Pour appliquer les modifications de configuration, vous devez redémarrer le service Nginx. Cela permet à Nginx de recharger ses configurations et d’appliquer les nouvelles règles de routage.

  10. Configurer le pare-feu (facultatif) :
    Si vous utilisez un pare-feu sur votre serveur, vous devrez peut-être autoriser le trafic sur le port que vous avez spécifié pour votre application Go (par exemple, le port 8080) et sur le port 80 pour le trafic HTTP. Assurez-vous de configurer votre pare-feu pour permettre le trafic entrant et sortant sur ces ports.

  11. Tester votre application :
    Une fois que vous avez configuré Nginx et déployé votre application Go, vous pouvez tester votre site web en accédant à votre domaine via un navigateur web. Assurez-vous que votre application est correctement chargée et fonctionne comme prévu.

En suivant attentivement ces étapes, vous devriez être en mesure de publier avec succès votre application web Go utilisant Nginx sur Ubuntu 18.04. N’hésitez pas à consulter la documentation officielle de Go et de Nginx pour des informations plus détaillées sur les configurations avancées et les meilleures pratiques de déploiement.

Bouton retour en haut de la page