Gitea - Git with a cup of tea - Installation and Configuration
Table des matières:
- Avant que tu commences
- Installation de Gogs
- Installer Git
- Créer un utilisateur Git
- Télécharger Gogs binary
- Créer un fichier d'unité systemd
- Installez Gogs à l'aide du programme d'installation Web
- Configuration de Nginx comme proxy de terminaison SSL
- Configuration des notifications par e-mail
- Mise à niveau de Gogs
- Conclusion
Gogs est un serveur git open source auto-hébergé écrit en Go. Il comprend un éditeur de fichiers de référentiel, un suivi des problèmes de projet et un wiki intégré.
Gogs est une application légère et peut être installée sur des systèmes de faible puissance. Si vous recherchez une alternative à Gitlab avec une empreinte mémoire beaucoup plus petite et que vous n'avez pas besoin de toutes les cloches et sifflets que Gitlab offre, alors vous devriez certainement essayer Gogs.
Ce didacticiel couvre les étapes d'installation et de configuration de Gogs sur Ubuntu 18.04. Les mêmes instructions s'appliquent à Ubuntu 16.04 et à toute autre distribution basée sur Ubuntu.
Avant que tu commences
Gogs peut utiliser la base de données SQLite, PostgreSQL ou MySQL / MariaDB pour stocker toutes ses données.
Dans ce tutoriel, nous utiliserons SQLite comme base de données de choix. Si SQLite n'est pas installé sur votre système, vous pouvez l'installer en tapant:
sudo apt install sqlite3
Pour une couche de sécurité supplémentaire, il est recommandé de configurer un pare-feu de base. Vous pouvez suivre les étapes de notre guide Comment configurer un pare-feu avec UFW sur Ubuntu 18.04.
Installation de Gogs
Nous installerons Gogs à partir du binaire. L'installation est un processus assez simple.
Installer Git
La première étape consiste à installer Git sur votre serveur. Pour ce faire, actualisez l'index du package local et installez le package git en exécutant les commandes suivantes en tant qu'utilisateur sudo:
sudo apt update
sudo apt install git
Vérifiez l'installation en affichant la version de Git:
git --version
Créer un utilisateur Git
Créez un nouvel utilisateur système pour exécuter le service Gogs en tapant:
sudo adduser --system --group --disabled-password --shell /bin/bash --home /home/git --gecos 'Git Version Control' git
La commande créera l'utilisateur et définira le répertoire personnel sur
/home/git
. La sortie ressemblera à quelque chose comme ci-dessous:
Adding system user `git' (UID 111)… Adding new group `git' (GID 116)… Adding new user `git' (UID 111) with group `git'… Creating home directory `/home/git'…
Télécharger Gogs binary
Visitez la page de téléchargement de Gogs et téléchargez le dernier binaire pour votre architecture. Au moment de l'écriture, la dernière version est 0.11.86, si une nouvelle version est disponible, changez la variable
VERSION
dans la commande ci-dessous.
Téléchargez l'archive Gogs dans le
/tmp
à l'aide de la commande wget suivante:
VERSION=0.11.86
wget https://dl.gogs.io/${VERSION}/gogs_${VERSION}_linux_amd64.tar.gz -P /tmp
Une fois le téléchargement terminé, extrayez le fichier tar.gz de Gogs et déplacez-le dans le répertoire
/home/git
:
sudo tar xf /tmp/gogs_*_linux_amd64.tar.gz -C /home/git
Exécutez la commande suivante pour changer la propriété du répertoire d'installation de Gogs en git d'utilisateur et de groupe:
sudo chown -R git: /home/git/gogs
Créer un fichier d'unité systemd
Gogs est livré avec un fichier d'unité Systemd déjà configuré pour correspondre à notre configuration.
Copiez le fichier dans le répertoire
/etc/systemd/system/
en tapant:
sudo cp /home/git/gogs/scripts/systemd/gogs.service /etc/systemd/system/
Une fois cela fait, démarrez et activez le service Gogs:
sudo systemctl start gogs
sudo systemctl enable gogs
Vérifiez que le service est démarré avec succès:
* gogs.service - Gogs Loaded: loaded (/etc/systemd/system/gogs.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2019-04-25 04:13:44 PDT; 9s ago Main PID: 14376 (gogs) Tasks: 8 (limit: 2319) CGroup: /system.slice/gogs.service `-14376 /home/git/gogs/gogs web
Installez Gogs à l'aide du programme d'installation Web
Maintenant que Gogs est téléchargé et en cours d'exécution, il est temps de finaliser l'installation via l'interface Web.
Ouvrez votre navigateur, saisissez
http://YOUR_DOMAIN_IR_IP:3000
et un écran similaire au suivant apparaîtra:


Le premier utilisateur enregistré est automatiquement ajouté au groupe Admin.
C'est ça. Gogs a été installé sur votre machine Ubuntu.
Configuration de Nginx comme proxy de terminaison SSL
Cette étape est facultative mais elle est fortement recommandée. Pour utiliser Nginx comme proxy inverse, vous devez avoir un domaine ou un sous-domaine pointant vers l'IP publique de votre serveur. Dans ce didacticiel, nous utiliserons
gogs.example.com
.
Tout d'abord, installez Nginx et générez un certificat SSL Let's Encrypt gratuit en suivant les guides ci-dessous:
Une fois cela fait, ouvrez votre éditeur de texte et modifiez le fichier de blocage du serveur de domaine:
sudo nano /etc/nginx/sites-enabled/gogs.example.com
/etc/nginx/sites-enabled/gogs.example.com
server { listen 80; server_name gogs.example.com; include snippets/letsencrypt.conf; return 301 https://gogs.example.com$request_uri; } server { listen 443 ssl http2; server_name gogs.example.com; proxy_read_timeout 720s; proxy_connect_timeout 720s; proxy_send_timeout 720s; client_max_body_size 50m; # Proxy headers proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Real-IP $remote_addr; # SSL parameters ssl_certificate /etc/letsencrypt/live/gogs.example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/gogs.example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/gogs.example.com/chain.pem; include snippets/letsencrypt.conf; include snippets/ssl.conf; # log files access_log /var/log/nginx/gogs.example.com.access.log; error_log /var/log/nginx/gogs.example.com.error.log; # Handle / requests location / { proxy_redirect off; proxy_pass http://127.0.0.1:3000; } }
N'oubliez pas de remplacer gogs.example.com par votre domaine Gogs et de définir le chemin d'accès correct aux fichiers de certificat SSL. Toutes les requêtes HTTP seront redirigées vers Redémarrez le service Nginx pour que les modifications prennent effet:
sudo systemctl restart nginx
Ensuite, nous devons changer le domaine Gogs et l'URL racine. Pour ce faire, ouvrez le fichier de configuration et modifiez les lignes suivantes:
sudo nano /home/git/gogs/custom/conf/app.ini
/home/git/gogs/custom/conf/app.ini
DOMAIN = gogs.example.com ROOT_URL =
Redémarrez le service Gogs en tapant:
sudo systemctl restart gogs
À ce stade, Gogs est configuré et vous pouvez y accéder à l'
https://gogs.example.com
:
https://gogs.example.com
Configuration des notifications par e-mail
Pour que Gogs puisse envoyer des e-mails de notification, vous pouvez installer Postfix ou utiliser un service de messagerie transactionnel tel que SendGrid, MailChimp, MailGun ou SES.
Pour activer les notifications par e-mail, ouvrez le fichier de configuration et modifiez les lignes suivantes:
sudo nano /home/git/gogs/custom/conf/app.ini
/home/git/gogs/custom/conf/app.ini
ENABLED = true HOST = SMTP_SERVER:SMTP_PORT FROM = SENDER_EMAIL USER = SMTP_USER PASSWD = YOUR_SMTP_PASSWORD
Assurez-vous de mettre les informations de serveur SMTP correctes.
Redémarrez le service Gogs pour que les modifications prennent effet:
sudo systemctl restart gogs
Gogs vous permet également de vous connecter à Slack en créant un webhook Web et d'envoyer des notifications à vos chaînes Slack.
Mise à niveau de Gogs
Pour mettre à niveau Gogs, plusieurs étapes manuelles sont nécessaires.
-
Arrêtez d'abord le service Gogs:
sudo systemctl stop gogsRenommez le répertoire d'installation de Gogs.
sudo mv /home/git/gogs{, _old}Téléchargez la dernière version de Gogs et déplacez-la dans le répertoire
/home/git:VERSION=wget https://dl.gogs.io/${VERSION}/gogs_${VERSION}_linux_amd64.tar.gz -P /tmpsudo tar xf /tmp/gogs_*_linux_amd64.tar.gz -C /home/gitAssurez-vous de modifier la
VERSIONavec la version actuelle de la version Gogs.Copiez
logrépertoirescustomdataet delogdans le répertoire extrait à l'aide de la commande rsync suivante:sudo rsync -a /home/git/gogs_old/{custom, data, log} /home/git/gogs/Enfin, démarrez le service Gogs:
sudo systemctl restart gogs
C'est ça.
Conclusion
Ce tutoriel vous a guidé à travers l'installation et la configuration de Gogs sur Ubuntu 18.04. Vous pouvez maintenant créer votre premier projet et commencer à utiliser votre nouveau serveur Gogs.
ubuntu gogsComment installer et configurer un serveur nfs sur Ubuntu 18.04
Le système de fichiers réseau (NFS) est un protocole de système de fichiers distribué qui vous permet de partager des répertoires distants sur un réseau. Dans ce tutoriel, nous allons voir comment configurer un serveur NFSv4 sur Ubuntu 18.04.
Comment installer et configurer redis sur Ubuntu 18.04
Redis est un magasin de structure de données en mémoire libre. Il peut être utilisé comme base de données, cache et courtier de messages et prend en charge diverses structures de données telles que des chaînes, des hachages, des listes, des ensembles, etc. Ce tutoriel décrit comment installer et configurer Redis sur un serveur Ubuntu 18.04.
Comment installer et configurer Nagios sur Ubuntu 18.04
Nagios est l'un des systèmes de surveillance open source les plus populaires. Nagios tient un inventaire de l'ensemble de votre infrastructure informatique et s'assure que vos réseaux, serveurs, applications, services et processus sont opérationnels.







