Comment installer Go sur Ubuntu 20.04

De Get Docs
Aller à :navigation, rechercher

Introduction

Go, parfois appelé "Golang", est un langage de programmation open source publié par Google en 2012. L'intention de Google était de créer un langage de programmation qui pourrait être appris rapidement.

Depuis sa sortie, Go est devenu très populaire parmi les développeurs et est utilisé pour diverses applications allant des applications cloud ou côté serveur à l'intelligence artificielle et à la robotique. Ce tutoriel explique comment télécharger et installer la dernière version de Go (actuellement la version 1.16.7) sur un serveur Ubuntu 20.04, créer la célèbre application Hello, World! et transformer votre code Go en un binaire exécutable pour une utilisation future.

Conditions préalables

Ce tutoriel nécessite un système Ubuntu 20.04 configuré avec un utilisateur non root avec des privilèges sudo et un pare-feu comme décrit dans Configuration initiale du serveur avec Ubuntu 20.04.

Étape 1 - Installation de Go

Dans cette étape, vous allez installer Go sur votre serveur.

Tout d'abord, connectez-vous à votre serveur Ubuntu via ssh :

ssh [email protected]_server_ip

Ensuite, accédez à la page officielle de téléchargements Go dans votre navigateur Web. À partir de là, copiez l'URL de l'archive tar de la version binaire actuelle.

Au moment d'écrire ces lignes, la dernière version est go1.16.7. Pour installer Go sur un serveur Ubuntu (ou n'importe quel serveur Linux, d'ailleurs), copiez l'URL du fichier se terminant par linux-amd64.tar.gz.

Maintenant que votre lien est prêt, confirmez d'abord que vous êtes dans le répertoire personnel :

cd ~

Utilisez ensuite curl pour récupérer l'archive, en veillant à remplacer l'URL en surbrillance par celle que vous venez de copier. L'indicateur -O garantit que cela aboutit à un fichier, et l'indicateur L indique les redirections HTTPS, car ce lien a été extrait du site Web Go et sera redirigé ici avant le téléchargement du fichier :

curl -OL https://golang.org/dl/go1.16.7.linux-amd64.tar.gz

Pour vérifier l'intégrité du fichier que vous avez téléchargé, exécutez la commande sha256sum et transmettez-la au nom du fichier en tant qu'argument :

sha256sum go1.16.7.linux-amd64.tar.gz

Cela renverra la somme de contrôle SHA256 de l'archive :

Outputgo1.16.7.linux-amd64.tar.gz
7fe7a73f55ba3e2285da36f8b085e5c0159e9564ef5f63ee0ed6b818ade8ef04  go1.16.7.linux-amd64.tar.gz

Si la somme de contrôle correspond à celle indiquée sur la page des téléchargements, vous avez correctement effectué cette étape.

Ensuite, utilisez tar pour extraire l'archive. Cette commande inclut le drapeau -C qui demande à tar de passer au répertoire donné avant d'effectuer toute autre opération. Cela signifie que les fichiers extraits seront écrits dans le répertoire /usr/local/, l'emplacement recommandé pour l'installation de Go… Le drapeau x indique à tar d'extraire, v lui dit que nous voulons une sortie détaillée (une liste des fichiers extraits), et f lui dit que nous allons spécifier un nom de fichier :

sudo tar -C /usr/local -xvf go1.16.7.linux-amd64.tar.gz

Bien que /usr/local/go soit l'emplacement recommandé pour l'installation de Go, certains utilisateurs peuvent préférer ou exiger des chemins différents.

Étape 2 - Définition des chemins d'accès

Dans cette étape, vous allez définir des chemins dans votre environnement.

Tout d'abord, définissez la valeur racine de Go, qui indique à Go où rechercher ses fichiers. Vous pouvez le faire en éditant le fichier .profile, qui contient une liste de commandes que le système exécute chaque fois que vous vous connectez.

Utilisez votre éditeur préféré pour ouvrir .profile, qui est stocké dans le répertoire personnel de votre utilisateur. Ici, nous utiliserons nano :

sudo nano ~/.profile

Ensuite, ajoutez les informations suivantes à la fin de votre fichier :

sudo nano ~/.profile

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

Après avoir ajouté ces informations à votre profil, enregistrez et fermez le fichier. Si vous avez utilisé nano, faites-le en appuyant sur CTRL+X, puis sur Y, puis sur ENTER.

Ensuite, actualisez votre profil en exécutant la commande suivante :

source ~/.profile

Ensuite, vérifiez si vous pouvez exécuter les commandes go en exécutant go version :

go version

Cette commande affichera le numéro de version de la version de Go installée sur votre système :

Outputgo version go1.16.7 linux/amd64

Cette sortie confirme que vous exécutez maintenant Go sur votre serveur.

Étape 3 - Test de votre installation

Maintenant que Go est installé et que les chemins sont définis pour votre serveur, vous pouvez essayer de créer votre application Hello, World! pour vous assurer que Go fonctionne.

Tout d'abord, créez un nouveau répertoire pour votre espace de travail Go, où Go construira ses fichiers :

mkdir hello

Déplacez-vous ensuite dans le répertoire que vous venez de créer :

cd hello

Lors de l'importation de packages, vous devez gérer les dépendances via le propre module du code. Vous pouvez le faire en créant un fichier go.mod avec la commande go mod init :

go mod init your_domain/hello

Ensuite, créez un fichier Hello, World! Go dans votre éditeur de texte préféré :

nano hello.go

Ajoutez le texte suivant dans votre fichier hello.go :

bonjour.

package main

import "fmt"

func main() {
    fmt.Println("Hello, World!")
}

Ensuite, enregistrez et fermez le fichier en appuyant sur CTRL+X, puis Y, puis ENTER.

Testez votre code pour vérifier qu'il imprime le message d'accueil Hello, World! :

go run .
OutputHello, World!

La commande go run compile et exécute le package Go à partir d'une liste de fichiers source .go à partir du nouveau répertoire hello que vous avez créé et du chemin que vous avez importé. Mais, vous pouvez également utiliser go build pour créer un fichier exécutable qui peut vous faire gagner du temps.

Étape 4 - Transformer votre code Go en exécutable binaire

La commande go run est généralement utilisée comme raccourci pour compiler et exécuter un programme nécessitant des modifications fréquentes. Dans les cas où vous avez terminé votre code et souhaitez l'exécuter sans le compiler à chaque fois, vous pouvez utiliser go build pour transformer votre code en un exécutable binaire. Construire votre code dans un binaire exécutable consolide votre application dans un seul fichier avec tout le code de support nécessaire pour exécuter le binaire. Une fois que vous avez construit l'exécutable binaire, vous pouvez ensuite exécuter go install pour placer votre programme sur un chemin de fichier exécutable afin que vous puissiez l'exécuter depuis n'importe où sur votre système. Ensuite, votre programme imprimera avec succès Hello, World! lorsque vous y serez invité et vous n'aurez pas besoin de recompiler le programme.

Essayez-le et exécutez go build. Assurez-vous de l'exécuter à partir du même répertoire où votre fichier hello.go est stocké :

go build

Ensuite, exécutez ./hello pour confirmer que le code fonctionne correctement :

./hello
OutputHello, World!

Cela confirme que vous avez réussi à transformer votre code hello.go en un binaire exécutable. Cependant, vous ne pouvez appeler ce binaire qu'à partir de ce répertoire. Si vous vouliez exécuter ce programme à partir d'un emplacement différent sur votre serveur, vous auriez besoin de spécifier le chemin complet du fichier binaire afin de l'exécuter.

Taper le chemin d'accès complet d'un fichier binaire peut rapidement devenir fastidieux. Comme alternative, vous pouvez exécuter la commande go install. Ceci est similaire à go build mais au lieu de laisser l'exécutable dans le répertoire courant, go install le place dans le répertoire $GOPATH/bin, ce qui vous permettra de l'exécuter depuis n'importe quel emplacement sur votre serveur.

Pour exécuter go install avec succès, vous devez lui transmettre le chemin d'installation du binaire que vous avez créé avec go build. Pour trouver le chemin d'installation du binaire, exécutez la commande go list suivante :

go list -f ‘{{.Target}}’

go list génère une liste de tous les packages Go nommés stockés dans le répertoire de travail actuel. L'indicateur f fera en sorte que go list renvoie la sortie dans un format différent en fonction du modèle de package que vous lui transmettez. Cette commande lui indique d'utiliser le modèle Target, ce qui obligera go list à renvoyer le chemin d'installation de tous les packages stockés dans ce répertoire :

Output‘/home/sammy/go/bin/hello

Il s'agit du chemin d'installation du fichier binaire que vous avez créé avec go build. Cela signifie que le répertoire où ce binaire est installé est /home/sammy/go/bin/.

Ajoutez ce répertoire d'installation au chemin du shell de votre système. Assurez-vous de modifier la partie en surbrillance de cette commande pour refléter le répertoire d'installation du binaire sur votre système, s'il est différent :

export PATH=$PATH:/home/sammy/go/bin/

Enfin, exécutez go install pour compiler et installer le package :

go install

Essayez d'exécuter ce binaire exécutable en entrant simplement hello

hello
OutputHello, World!

Si vous avez reçu la sortie Hello, World!, vous avez réussi à rendre votre programme Go exécutable à partir d'un chemin spécifique et non spécifié sur votre serveur.

Conclusion

En téléchargeant et en installant le dernier package Go et en définissant ses chemins, vous disposez désormais d'un système à utiliser pour le développement Go. Vous pouvez trouver et vous abonner à des articles supplémentaires sur l'installation et l'utilisation de Go dans notre balise "Go"