Installation Gitea

De EjnTricks

Cet article présente l'installation de Gitea sur une machine Ubuntu.

Hand-icon.png Votre avis

Nobody voted on this yet

 You need to enable JavaScript to vote


Dependencies.gif Pré requis

Gitea étant un serveur de source Git, le binaire Git doit être installé.

#sudo apt-get install git


User-icon.png Compte de service

Gitea est un binaire qui sera exécuté en service sur la machine. Il est préférable d'avoir un compte de service. Celui-ci ne nécessite aucun répertoire home, et un groupe de même nom est créé.

#sudo adduser --system --home /usr/share/gitea/home --group gitea
Ajout de l'utilisateur système « gitea » (UID 129) ...
Ajout du nouveau groupe « gitea » (GID 138) ...
Ajout du nouvel utilisateur « gitea » (UID 129) avec pour groupe d'appartenance « gitea » ...
Création du répertoire personnel « /usr/share/gitea/home »...

A noter le répertoire home qui est spécifié avec l'emplacement /usr/share/gitea/home. Un répertoire home est nécessaire pour ce compte, car des clés SSH seront créé.


Folder-icon.png Initialisation

L'application va être installée sous /var/opt/gitea avec une organisation qui doit permettre de faciliter les montées de version.

#sudo mkdir /var/opt/gitea
#sudo chown gitea:gitea /var/opt/gitea
#sudo chmod 700 /var/opt/gitea

L'exécution nécessite un répertoire de travail, qui est placé dans le répertoire /usr/share/gitea. Ce répertoire a été créé lors de la création du compte de service. Il suffit de modifier les permissions.

#sudo chown -R gitea:gitea /usr/share/gitea
#sudo find /usr/share/gitea -type d -exec chmod 0700 {} \;


Icon-database.png Configuration MySql

Download-icon.png Téléchargement

L'application est téléchargée, en version 1.3.2 dans le répertoire /var/opt/gitea avec le nom gitea-1.3.2.

Le fichier téléchargé est indépendant et ne nécessite aucun déploiement complémentaire.


Icon File Owner.png Propriétaire fichiers

L'installation a été réalisée avec le compte root. Il est préférable de donner la propriété au compte de démarrage du serveur web, soit gitea dans le cadre de cette installation.

#sudo chown -R gitea:gitea /var/opt/gitea


Icon ACL.png Run-icon.png Sécurisation / Exécutable

Il est recommandé de restreindre les droits d'accès au compte technique mis en place, soit gitea. De plus, le programme doit être exécutable.

#sudo chmod 700 /var/opt/gitea/gitea-1.3.2


Vues-icon.png Référencement version

Afin de faciliter les montées de versions, le lien /var/opt/gitea/gitea est mis en place pour référencer la version active.

#sudo ln -s /var/opt/gitea/gitea-1.3.2 /var/opt/gitea/gitea
#sudo chown -h gitea:gitea /var/opt/gitea/gitea


Link= Test exécution

Dans la procédure officielle, il est recommandé d'effectuer un test de démarrage de l'application.

#sudo /var/opt/gitea/gitea web
2018/02/08 22:26:16 [W] Custom config '/var/opt/gitea/custom/conf/app.ini' not found, ignore this if you're running first time
2018/02/08 22:26:16 [T] AppPath: /var/opt/gitea/gitea-1.3.2
2018/02/08 22:26:16 [T] AppWorkPath: /var/opt/gitea
2018/02/08 22:26:16 [T] Custom path: /var/opt/gitea/custom
2018/02/08 22:26:16 [T] Log path: /var/opt/gitea/log
2018/02/08 22:26:16 [I] Gitea v1.3.2 built with: bindata, sqlite
2018/02/08 22:26:16 [I] Log Mode: Console(Trace)
2018/02/08 22:26:16 [I] XORM Log Mode: Console(Trace)
2018/02/08 22:26:16 [I] Cache Service Enabled
2018/02/08 22:26:16 [I] Session Service Enabled
2018/02/08 22:26:16 [I] SQLite3 Supported
2018/02/08 22:26:16 [I] Run Mode: Development
2018/02/08 22:26:17 Serving [::]:3000 with pid 2831
2018/02/08 22:26:17 [I] Listen: http://0.0.0.0:3000

Après le test, il faut spprimer le répertoire custom.

#sudo rm -rf /var/opt/gitea/custom


Configuration-icon.png Publication sous Apache

Start-icon.png Installation service

Network Admin.png Initialisation

Icon ACL.png Icon-Configuration-Settings.png Sécurisation / Configuration

Suite à l'initialisation de l'application, un répertoire custom est créé, dans lequel se trouve le fichier de configuration conf/app.ini. Ce fichier contient les éléments de configuration, comme la chaîne de connexion à la base de données, et il est nécessaire de le sécuriser.

Pour s'assurer de traiter tous les cas, les permissions sont placés sur le répertoire custom pour ne donner un accès qu'au compte d'exécution gitea.

#sudo find /var/opt/gitea/custom -type f -exec chmod 0600 {} \;
#sudo find /var/opt/gitea/custom -type d -exec chmod 0700 {} \;


Viewer icon.png Voir aussi

Documentation officielle: https://docs.gitea.io/fr-fr/install-from-binary/

https://gist.github.com/appleboy/36313a525fbef673f8aefadb9c0f8247

Autrs procédures d'installation