GNU/Linux >> Tutoriels Linux >  >> Debian

Comment installer Gogs sur Debian 9

Ce guide vous guidera tout au long du processus d'installation de Gogs sur un VPS Debian 9 avec MariaDB comme serveur de base de données.

Gogs est un service Git auto-hébergé gratuit et open-source écrit dans le langage de programmation Go. Il est facile à installer, multiplateforme et léger, et tous ces attributs permettent à Gogs de fonctionner facilement sur toutes sortes de matériel. Ce guide devrait également fonctionner sur d'autres systèmes VPS Linux, mais il a été testé et écrit pour un VPS Debian 9. Commençons par l'installation.

Prérequis

  • Un serveur virtuel Debian 9
  • Un compte utilisateur avec des privilèges sudo, ou un accès à l'utilisateur "root" lui-même

Étape 1 :Installer les packages requis

Connectez-vous à votre VPS via SSH en tant que root ou en tant qu'utilisateur sudo :

ssh userame@IP_Address -p Port_Number

Assurez-vous de remplacer "IP_Address" et "Port_Number" par l'adresse IP et les numéros de port SSH respectifs de votre serveur.

Une fois connecté, exécutez les commandes suivantes pour mettre à jour tous les packages installés vers leurs dernières versions disponibles :

sudo apt-get update
sudo apt-get upgrade

Ensuite, installez le package git à l'aide de la commande suivante :

sudo apt-get install git

Étape 2 :Créer une base de données MariaDB

Gogs peut utiliser MySQL/MariaDB, PostgreSQL, MSSQL, TiDB et SQLite3 pour son backend de base de données.

Dans ce tutoriel, nous utiliserons MariaDB. Si le serveur MySQL ou MariaDB n'est pas installé sur votre serveur, vous pouvez installer la dernière version de MariaDB en exécutant la commande suivante :

sudo apt-get install mysql-server

Lorsque l'installation de MariaDB est terminée, il est recommandé d'exécuter le mysql_secure_installation script pour améliorer la sécurité de votre serveur de base de données :

sudo mysql_secure_installation

Répondez aux questions de sécurité comme suit. Si à un moment quelconque on vous demande le mot de passe root MariaDB avant de continuer, appuyez simplement sur la touche [Entrée], car aucun mot de passe n'est défini par défaut :

Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y

Connectez-vous au shell MySQL à l'aide de l'utilisateur racine MySQL et du mot de passe que vous avez précédemment configuré :

mysql -u root -p

Créez une base de données MySQL et un utilisateur pour Gogs, et accordez des autorisations à l'utilisateur en exécutant les commandes suivantes :

MariaDB [(none)]> CREATE SCHEMA `gogs` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON gogs.* TO 'gogs'@'localhost' IDENTIFIED BY 'strongpassword';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT

Assurez-vous de remplacer 'strongpassword' par un mot de passe fort réel.

Étape 3 :Installez Gogs

Créez un nouvel utilisateur système qui exécutera le serveur Gogs :

sudo adduser --home /opt/gogs --shell /bin/bash --gecos 'Gogs application' gogs

Ensuite, téléchargez le binaire Gogs depuis la page Gogs Github en utilisant « wget » :

wget https://github.com/gogs/gogs/releases/download/v0.11.86/linux_amd64.tar.gz

Extraire l'archive téléchargée dans le /opt/gogs répertoire :

sudo tar xvf linux_amd64.tar.gz --strip-components=1 -C /opt/gogs

Changez la propriété du répertoire en utilisateur Gogs :

sudo chown -R gogs:gogs /opt/gogs/

Ensuite, copiez le fichier d'unité SystemD. Cela nous permet de créer un service SystemD pour Gogs :

sudo cp /opt/gogs/scripts/systemd/gogs.service /etc/systemd/system/

Ouvrez le fichier d'unité à l'aide de l'éditeur de texte de votre choix. Nous utiliserons nano.

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

Une fois le fichier ouvert, modifiez-le comme suit :

[Unit]
[Unit]
Description=Gogs
After=syslog.target
After=network.target
After=mariadb.service mysqld.service postgresql.service memcached.service redis.service

[Service]
# Modify these two values and uncomment them if you have
# repos with lots of files and get an HTTP error 500 because
# of that
###
#LimitMEMLOCK=infinity
#LimitNOFILE=65535
Type=simple
User=gogs
Group=gogs
WorkingDirectory=/opt/gogs
ExecStart=/opt/gogs/gogs web
Restart=always
Environment=USER=gogs HOME=/opt/gogs

# Some distributions may not support these hardening directives. If you cannot start the service due
# to an unknown option, comment out the ones not supported by your version of systemd.
ProtectSystem=full
PrivateDevices=yes
PrivateTmp=yes
NoNewPrivileges=true

[Install]
WantedBy=multi-user.target

Une fois que vous avez terminé de modifier le fichier, enregistrez-le, puis démarrez et activez le service Gogs :

sudo systemctl daemon-reload
sudo systemctl start gogs
sudo systemctl enable gogs

Exécutez la commande suivante pour vérifier que le service Gogs est démarré avec succès :

sudo systemctl status gogs
● gogs.service - Gogs
   Loaded: loaded (/etc/systemd/system/gogs.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2019-05-13 02:57:32 CDT; 29s ago
 Main PID: 791 (gogs)
   CGroup: /system.slice/gogs.service
           └─791 /opt/gogs/gogs web

May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ WARN] Custom config '/opt/gogs/custom/conf/app.ini' not found, ignore this if you're running first time
May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [TRACE] Custom path: /opt/gogs/custom
May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [TRACE] Log path: /opt/gogs/log
May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [TRACE] Log Mode: Console (Trace)
May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ INFO] Gogs 0.11.86.0130
May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ INFO] Cache Service Enabled
May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ INFO] Session Service Enabled
May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ INFO] SQLite3 Supported
May 13 02:57:32 vps gogs[791]: 2019/05/13 02:57:32 [ INFO] Run Mode: Development
May 13 02:57:33 vps gogs[791]: 2019/05/13 02:57:33 [ INFO] Listen: http://0.0.0.0:3000

Étape 4 :Configurer les gogs

Une fois l'installation terminée, rendez-vous sur http://server_ip:3000/install et remplissez tous les champs obligatoires. N'oubliez pas de remplacer "server_ip" par l'adresse IP publique de votre serveur :

Paramètres de la base de données

  • Type de base de données :MySQL
  • Hôte :127.0.0.1:3306
  • Utilisateur :gogs
  • Mot de passe :mot de passe fort
  • Nom de la base de données :gogs

Paramètres généraux de Gogs

  • Nom de l'application :Gogs
  • Chemin racine du référentiel :/opt/gogs/gogs-repositories
  • Exécuter l'utilisateur :gogs
  • Domaine :SERVER_IP
  • Port SSH :22
  • Port HTTP :3 000
  • URL de l'application :http://SERVER_IP:3000/
  • Chemin du journal :/opt/gogs/log

Une fois terminé, cliquez sur le bouton d'installation et vous êtes prêt à partir.

L'accès administratif est automatiquement accordé au premier utilisateur enregistré :

C'est ça. Vous avez installé avec succès Gogs sur votre VPS Debian 9. Pour plus d'informations sur la gestion de votre installation Gogs, veuillez consulter la documentation officielle de Gogs.

Bien sûr, vous n'avez rien à faire si vous utilisez l'un de nos services d'hébergement VPS Linux, auquel cas vous pouvez simplement demander à nos administrateurs Linux experts de tout configurer et d'installer Gogs pour vous. Ils sont disponibles 24h/24 et 7j/7 et prendront immédiatement en charge votre demande.

PS . Si vous avez aimé cet article ou l'avez trouvé utile, partagez-le avec vos amis sur les réseaux sociaux en utilisant les raccourcis de partage ci-dessous, ou laissez simplement un commentaire dans la section des commentaires. Merci.


Debian
  1. Comment installer Tomcat 8.5 sur Debian 9

  2. Comment installer Nextcloud sur Debian 9

  3. Comment installer PostgreSQL 11 / 10 sur Debian 9 et Debian 8

  4. Comment installer MongoDB 4.4 / 4.2 sur Debian 9

  5. Comment installer PostgreSQL sur Debian 11 / Debian 10

Comment installer MariaDB sur Debian 11

Comment installer Nginx sur Debian 11

Comment installer Nagios sur Debian 10 / Debian 9

Comment installer LibreNMS sur Debian 11 / Debian 10

Comment installer Yclas sur Debian 11

Comment installer Go sur Debian 11