relecture

This commit is contained in:
Gregory Colpart 2018-11-11 20:01:19 +01:00
parent ca325e52c4
commit a376e69dc9

View file

@ -3,15 +3,16 @@ title: Howto Gitea
categories: sysadmin git forge
...
* Site officiel : <https://gitea.io/>
* Documentation : <https://docs.gitea.io/fr-fr/>
[Gitea](https://gitea.io/) est un fork de gogs, une solution d'hébergement de code avec git.
[Gitea](https://gitea.io/) est un logiciel libre de gestion de code source permettant de créer des projets avec un dépôt [Git](HowtoGit), des tickets, un wiki et une collaboration autour du code (fork, pull requests, etc.). Gitea est un fork de [Gogs](https://gogs.io/) qui ressemble fortement au logiciel propriétaire *Github*, il est écrit en Go et nous le trouvons simple à installer et maintenir contrairement à [Gitlab](HowtoGitlab/10).
## Installation
Malheureusement, gitea n'est pas distribué sous forme de paquet Debian. Une alternative est donc d'utiliser directement les binaires produits par les développeurs de Gitea. Ils sont récupérables sur <https://dl.gitea.io/gitea/>.
Malheureusement, Gitea n'est pas distribué sous forme de paquet Debian. Une alternative est donc d'utiliser directement les binaires produits par les développeurs de Gitea. Ils sont récupérables sur <https://dl.gitea.io/gitea/>.
~~~
# cd /usr/local/bin
@ -25,19 +26,21 @@ Malheureusement, gitea n'est pas distribué sous forme de paquet Debian. Une alt
Gitea version 1.5.2 built with: bindata, sqlite
~~~
**Note** : Même si gitea peut fonctionner de manière autonome avec SQLite, à partir d'une certaine taille/utilisation, il est préférable de basculer vers un moteur de base de données tel que [HowtoMySQL]() ou [HowtoPostgreSQL]() et d'ajouter [HowtoRedis]() pour le cache/sessions.
> *Note* : Même si gitea peut fonctionner de manière autonome avec SQLite, à partir d'une certaine taille/utilisation, il est préférable de basculer vers un moteur de base de données tel que [HowtoMySQL]() ou [HowtoPostgreSQL]() et d'ajouter [HowtoRedis]() pour le cache/sessions.
### Mettre à jour
Le processus de mise à jour est assez simple et similaire au processus d'installation. Après avoir regardé s'il n'y a pas d'actions à faire manuellement, on peut simplement télécharger le dernier binaire dans `/usr/local/bin/`. Lui appliquer les bon droits (*chmod 755*) et mettre à jour le lien symbolique /usr/local/bin/gitea vers ce nouveau binaire.
## Mise à jour
Il ne reste plus qu'à redémarrer l'instance. C'est terminé!
Le processus de mise à jour est assez simple et similaire au processus d'installation. Après avoir regardé s'il n'y a pas d'actions à faire manuellement, on peut simplement télécharger le dernier binaire dans `/usr/local/bin/`. Lui appliquer les bon droits (*chmod 755*) et mettre à jour le lien symbolique `/usr/local/bin/gitea` vers ce nouveau binaire.
Il ne reste plus qu'à redémarrer l'instance. C'est terminé !
## Configuration
Dans la suite de cette documentation, on se place dans le cas d'une instance simple, fonctionnant avec l'utilisateur **git**. On part du principe que :
* MySQL est déjà installé
Dans la suite de cette documentation, on se place dans le cas d'une instance simple, fonctionnant avec l'utilisateur **git**. On part du principe que :
* [MySQL](HowtoMySQL) est déjà installé
* le compte **git** pour l'application existe.
Au final, on va se retrouver avec la hiérarchie suivante :
@ -68,23 +71,22 @@ $ tree /home/git
~~~
Ces dossiers seront créés au premier lancement de gitea. Il faut donc s'assurer que certaines variables d'environnement sont bien positionnées.
Ces dossiers seront créés au premier lancement de Gitea. Il faut donc s'assurer que certaines variables d'environnement sont bien positionnées.
Lors de la première exécution de gitea, une page d'installation va demander tous les paramètres nécessaires pour initialiser l'instance. Celle-ci va aussi permettre de créer le premier compte administrateur.
Lors de la première exécution de Gitea, une page d'installation va demander tous les paramètres nécessaires pour initialiser l'instance. Celle-ci va aussi permettre de créer le premier compte administrateur.
### /etc/gitea/git.ini
On doit initialiser le fichier de configuration de gitea avec les commandes suivantes.
A noter qu'on ne laisse les droits d'écritures uniquement pour l'installation.
~~~
# touch /etc/gitea/git.ini
# chown root:git /etc/gitea/git.ini
# chmod g+rw /etc/gitea/git.ini
~~~
On ajoute aussi quelques réglages initiaux, pour que l'interface de gitea soit directement fonctionnelle (avec des logs en cas de soucis) :
On ajoute aussi quelques réglages initiaux, pour que l'interface de Gitea soit directement fonctionnelle (avec des logs en cas de souci) :
~~~
# cat /etc/gitea/git.ini
@ -151,9 +153,9 @@ WantedBy=multi-user.target
mysql> GRANT ALL PRIVILEGES ON git.* TO 'git'@localhost IDENTIFIED BY 'PASSWORD';
~~~
Côté gitea.ini, la base de donnée MySQL se configure avec la section ci-dessous.
Côté `gitea.ini`, la base de donnée MySQL se configure avec la section ci-dessous.
**Note** : La page d'installation va remplir cette section de la configuration automatiquement.
> *Note* : La page d'installation va remplir cette section de la configuration automatiquement.
~~~
[database]
@ -198,7 +200,7 @@ server {
### Redis
On peut utiliser Redis comme support pour les sessions et le cache de gitea.
On peut utiliser Redis comme support pour les sessions et le cache de Gitea.
#### Cache
@ -223,7 +225,7 @@ PROVIDER_CONFIG = network=tcp,addr=127.0.0.1:6379,password=PASSWORD,db=0,pool_s
### Multiples instances
On peut très bien faire du multi-instance. On peut ainsi basculer sur une unité systemd avec paramètre comme :
On peut faire du multi-instances. On peut ainsi basculer sur une unité systemd avec paramètre comme :
~~~
# cat /etc/systemd/system/gitea@.service