admin:services:forge.chapril.org
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| admin:services:forge.chapril.org [2021/07/29 09:50] – [Procédure de mise à jour] réordonnancement de l'ordre des fonctions au cas où elles seraient copiées/collées, étant donné que la doc mentionne "dans l'ordre" pilou | admin:services:forge.chapril.org [2025/11/08 23:30] (Version actuelle) – jeff | ||
|---|---|---|---|
| Ligne 2: | Ligne 2: | ||
| <note tip> | <note tip> | ||
| + | |||
| + | ===== Introduction ===== | ||
| + | |||
| + | Cette documentation explique comment installer un service, en l’occurrence la forge, sur une nouvelle machine virtuelle de l' | ||
| + | |||
| + | Ce service de forge est basé sur Gitea, distribué sous licence MIT. | ||
| + | |||
| + | Les forges sont publics ou privés au choix. | ||
| ===== Installation ===== | ===== Installation ===== | ||
| Ligne 231: | Ligne 239: | ||
| < | < | ||
| export GITEA_WORK_DIR=/ | export GITEA_WORK_DIR=/ | ||
| - | mkdir -p $GITEA_WORK_DIR/ | + | mkdir -p $GITEA_WORK_DIR/ |
| - | chown -R gitea:gitea $GITEA_WORK_DIR | + | |
| - | chmod -R ug+x $GITEA_WORK_DIR | + | chown root:gitea $GITEA_WORK_DIR |
| - | chmod -R o-rwx $GITEA_WORK_DIR | + | chown root:root $GITEA_WORK_DIR/ |
| + | chown gitea:gitea $GITEA_WORK_DIR/ | ||
| + | |||
| + | chmod u=rwx, | ||
| + | chmod u=rwx,g=rx,o=rx $GITEA_WORK_DIR/ | ||
| + | chmod u=rwx, | ||
| mkdir /etc/gitea | mkdir /etc/gitea | ||
| chown root:gitea /etc/gitea | chown root:gitea /etc/gitea | ||
| - | chmod ug+rwx / | + | chmod ug=rwx / |
| - | chmod o-rwx /etc/gitea | + | chmod o= /etc/gitea |
| mkdir / | mkdir / | ||
| Ligne 292: | Ligne 305: | ||
| Group=gitea | Group=gitea | ||
| WorkingDirectory=/ | WorkingDirectory=/ | ||
| - | ExecStart=/ | + | ExecStart=/ |
| + | ExecStop=/ | ||
| + | ExecStop=/ | ||
| Restart=always | Restart=always | ||
| - | Environment=USER=gitea HOME=/ | + | Environment=USER=gitea HOME=/ |
| [Install] | [Install] | ||
| Ligne 353: | Ligne 368: | ||
| chmod g=r / | chmod g=r / | ||
| </ | </ | ||
| - | ==== Paramétrage complémentaire | + | ===== Paramétrages complémentaires ===== |
| Dans la page '' | Dans la page '' | ||
| + | |||
| + | ==== section par défaut === | ||
| + | |||
| + | < | ||
| + | APP_NAME = La forge Chapril | ||
| + | RUN_USER = gitea | ||
| + | RUN_MODE = prod | ||
| + | WORK_PATH = /srv/gitea | ||
| + | </ | ||
| + | ==== base de données ==== | ||
| + | |||
| + | < | ||
| + | [database] | ||
| + | DB_TYPE | ||
| + | HOST = / | ||
| + | NAME = giteadb | ||
| + | USER = giteadbadmin | ||
| + | PASSWD | ||
| + | SCHEMA | ||
| + | SSL_MODE = disable | ||
| + | CHARSET | ||
| + | </ | ||
| + | |||
| + | ==== Désactivation des appels aux services externes ==== | ||
| + | |||
| + | < | ||
| + | [picture] | ||
| + | DISABLE_GRAVATAR | ||
| + | ENABLE_FEDERATED_AVATAR = false | ||
| + | |||
| + | [openid] | ||
| + | ENABLE_OPENID_SIGNIN = false | ||
| + | ENABLE_OPENID_SIGNUP = false | ||
| + | </ | ||
| + | |||
| Ligne 372: | Ligne 422: | ||
| < | < | ||
| [repository] | [repository] | ||
| + | ROOT = / | ||
| PREFERRED_LICENSES=AGPL-3.0-or-later, | PREFERRED_LICENSES=AGPL-3.0-or-later, | ||
| </ | </ | ||
| + | ==== lfs ==== | ||
| + | |||
| + | < | ||
| + | [lfs] | ||
| + | PATH = / | ||
| + | </ | ||
| ==== Taille maximale de téléversement ==== | ==== Taille maximale de téléversement ==== | ||
| Ligne 398: | Ligne 455: | ||
| [attachment] | [attachment] | ||
| ; Max size of each file. Defaults to 4MB | ; Max size of each file. Defaults to 4MB | ||
| - | MAX_SIZE = 20 | + | MAX_SIZE = 50 |
| </ | </ | ||
| + | |||
| + | ==== sections session et log ==== | ||
| + | < | ||
| + | [session] | ||
| + | PROVIDER = file | ||
| + | |||
| + | [log] | ||
| + | MODE = file | ||
| + | LEVEL = info | ||
| + | ROOT_PATH = / | ||
| + | </ | ||
| + | |||
| + | ==== Désactiver l' | ||
| + | |||
| + | < | ||
| + | [packages] | ||
| + | ; Enable/ | ||
| + | ENABLED = false | ||
| + | </ | ||
| + | |||
| + | ===== Activer le flux SSH ===== | ||
| + | |||
| + | Pour git clone/ | ||
| + | Sauf qu'en ipv4, le port 22 est déjà redirigé vers la vm bastion qui proxifie les accès SSH aux vm. | ||
| + | |||
| + | Du coup, choix architectural d' | ||
| + | < | ||
| + | user ---> vip:222 --nat-ipv4-> | ||
| + | </ | ||
| + | |||
| + | Configuration dans ''/ | ||
| + | < | ||
| + | SSH_PORT | ||
| + | </ | ||
| + | |||
| + | Configuration dédiée de firehol : | ||
| + | < | ||
| + | =(^-^)=root@grof:/ | ||
| + | #FHVER: 1:213 | ||
| + | # La premiere ligne ci dessus est nécessaire !! | ||
| + | server_gitea_ports=" | ||
| + | client_gitea_ports=" | ||
| + | |||
| + | =(^-^)=root@grof:/ | ||
| + | server gitea accept | ||
| + | </ | ||
| + | |||
| + | Gestion du port 222 par ssh : | ||
| + | < | ||
| + | diff --git a/ | ||
| + | -#Port 22 | ||
| + | +Port 22 | ||
| + | +Port 222 | ||
| + | </ | ||
| + | |||
| + | |||
| + | Pour rappel, dans ''/ | ||
| + | < | ||
| + | ln -s / | ||
| + | </ | ||
| + | |||
| + | Redirection du port 222 depuis vip vers le port 22 de la vm grof : | ||
| + | < | ||
| + | TODO | ||
| + | </ | ||
| + | |||
| ===== Personnalisation ===== | ===== Personnalisation ===== | ||
| Basée sur la page https:// | Basée sur la page https:// | ||
| - | Le dossier root@grof:/ | + | Le dossier |
| Le but est d' | Le but est d' | ||
| ==== Page d' | ==== Page d' | ||
| Ligne 533: | Ligne 656: | ||
| mv logo-forgechaprilorg02.png gitea-lg.png | mv logo-forgechaprilorg02.png gitea-lg.png | ||
| chmod go+r *png *svg | chmod go+r *png *svg | ||
| + | ln -s logo.svg favicon.svg | ||
| systemctl restart gitea | systemctl restart gitea | ||
| </ | </ | ||
| Ligne 585: | Ligne 709: | ||
| </ | </ | ||
| </ | </ | ||
| - | ===== Activer le flux SSH ===== | ||
| - | Pour git clone/ | ||
| - | Sauf qu'en ipv4, le port 22 est déjà redirigé vers la vm bastion qui proxifie les accès SSH aux vm. | ||
| - | |||
| - | Du coup, choix architectural d' | ||
| - | < | ||
| - | user ---> vip:222 --nat-ipv4-> | ||
| - | </ | ||
| - | |||
| - | Configuration dans ''/ | ||
| - | < | ||
| - | SSH_PORT | ||
| - | </ | ||
| - | |||
| - | Configuration dédiée de firehol : | ||
| - | < | ||
| - | =(^-^)=root@grof:/ | ||
| - | #FHVER: 1:213 | ||
| - | # La premiere ligne ci dessus est nécessaire !! | ||
| - | server_gitea_ports=" | ||
| - | client_gitea_ports=" | ||
| - | |||
| - | =(^-^)=root@grof:/ | ||
| - | server gitea accept | ||
| - | </ | ||
| - | |||
| - | Gestion du port 222 par ssh : | ||
| - | < | ||
| - | diff --git a/ | ||
| - | -#Port 22 | ||
| - | +Port 22 | ||
| - | +Port 222 | ||
| - | </ | ||
| - | |||
| - | |||
| - | Pour rappel, dans ''/ | ||
| - | < | ||
| - | ln -s / | ||
| - | </ | ||
| - | |||
| - | Redirection du port 222 depuis vip vers le port 22 de la vm grof : | ||
| - | < | ||
| - | TODO | ||
| - | </ | ||
| ===== Première utilisation ===== | ===== Première utilisation ===== | ||
| Ligne 645: | Ligne 725: | ||
| * la documentation officielle de Gitea contient une page sur les backups : '' | * la documentation officielle de Gitea contient une page sur les backups : '' | ||
| - | 48h avant, ajouter | + | Ajouter |
| - | Donc la procédure de mise à jour peut consister à : | + | Avant mise à jour, il est nécessaire de vérifier l' |
| - | * définir dans une variable le numéro de la nouvelle version : | + | |
| - | < | + | Donc la procédure de mise à jour peut consister, en utilisant un multiplexeur de terminal, |
| + | * définir dans une variable le numéro de la nouvelle version | ||
| export VERSION=1.X.Y | export VERSION=1.X.Y | ||
| </ | </ | ||
| - | * Lancer le script suivant ou bien copier/ | ||
| - | < | ||
| - | #!/bin/bash | ||
| - | set -ex | + | * verifier l' |
| - | + | /srv/forge.chapril.org/tools/upgrade.sh verify | |
| - | BINDIR=/ | + | </ |
| - | # | + | |
| - | + | ||
| - | cd $BINDIR | + | |
| - | + | ||
| - | function verify() { | + | |
| - | if ./gitea --version | + | |
| - | echo " | + | |
| - | fi | + | |
| - | } | + | |
| - | + | ||
| - | function download() { | + | |
| - | wget -c https:// | + | |
| - | wget -c https://dl.gitea.io/ | + | |
| - | wget -c https:// | + | |
| - | sha256sum -c gitea-$VERSION-linux-amd64.sha256 | + | |
| - | gpg --keyserver keys.openpgp.org --recv 7C9E68152594688862D62AF62D9AE806EC1592E2 | + | |
| - | gpg --verify gitea-$VERSION-linux-amd64.asc gitea-$VERSION-linux-amd64 | + | |
| - | + | ||
| - | } | + | |
| - | + | ||
| - | function stop() { | + | |
| - | systemctl stop gitea | + | |
| - | } | + | |
| - | + | ||
| - | function backup() { | + | |
| - | su - gitea -c " | + | |
| - | } | + | |
| - | + | ||
| - | function | + | |
| - | chmod u+x gitea-$VERSION-linux-amd64 | + | |
| - | chown gitea.gitea gitea-$VERSION-linux-amd64 | + | |
| - | ln --force gitea-$VERSION-linux-amd64 gitea | + | |
| - | } | + | |
| - | + | ||
| - | function start() { | + | |
| - | systemctl start gitea | + | |
| - | } | + | |
| - | + | ||
| - | for fun in "${@:-verify | + | |
| - | | + | |
| - | done | + | |
| + | * Lancer [[https:// | ||
| + | / | ||
| + | / | ||
| + | / | ||
| + | # être attentif aux éventuels problèmes | ||
| + | / | ||
| + | su - gitea -c "/ | ||
| + | / | ||
| + | # corriger les éventuels problèmes | ||
| + | / | ||
| </ | </ | ||
| - | * surveiller les logs : | + | * surveiller les logs :< |
| - | < | + | |
| tail -f / | tail -f / | ||
| + | tail -f / | ||
| </ | </ | ||
| - | * supprimer manuellement l' | ||
| * vérifier que les personnalisations ne sont pas cassées : | * vérifier que les personnalisations ne sont pas cassées : | ||
| - | * https:// | + | * https:// |
| - | * logo | + | * vérifier la présence de la bannière Chapril avec notamment les liens '' |
| - | * Chercher le texte "La forge Chapril" | + | * logo (bleu, un profil de chat dans la tasse) |
| - | * favicon | + | * Chercher le texte '' |
| + | * favicon | ||
| + | * vérifier qu'il y a un lien '' | ||
| + | * vérifier la présence des liens '' | ||
| * https:// | * https:// | ||
| - | * petit encart jaune "En créant un compte, vous acceptez ..." | + | * petit encart jaune '' |
| * logo a gauche de la barre de navigation | * logo a gauche de la barre de navigation | ||
| * Enregistrer un compte pour vérifier que le courriel d' | * Enregistrer un compte pour vérifier que le courriel d' | ||
| + | * en étant authentifié: | ||
| + | * vérifier la présence des liens '' | ||
| + | * vérifier l' | ||
| + | * supprimer manuellement l' | ||
| + | * supprimer, éventuellement, | ||
| + | ===== Procédure de restauration ===== | ||
| + | |||
| + | Il n' | ||
| + | * le fichier de configuration '' | ||
| + | * les données, les logs, les dépôts | ||
| + | * la base de données | ||
| + | |||
| + | ===== Tâches récurrentes et modération ===== | ||
| + | |||
| + | En plus de la mise à jour du service décrite précédemment, | ||
| + | |||
| + | - Pour connaître l'IP utilisée lors de la création d'un compte: | ||
| + | * Via l' | ||
| + | * Puis recherchez la date et l' | ||
| + | - Pour les actions suivantes, il est nécessaire de [[https:// | ||
| + | * Pour '' | ||
| + | * Choisir les autorisations suivantes, sélectionner '' | ||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | * Trouver les comptes récemment créés et actifs (afin de supprimer les nouvelles issues crées par les spammeurs) (pour [[https:// | ||
| + | * Supprimer un range : < | ||
| + | * Sélection des comptes récents contenant des liens en description : < | ||
| + | * trouver les comptes ayant plusieurs fois un caractère donné dans l' | ||
| + | * modération des dépôts: en cas d' | ||
| + | * vérifier la présence d' | ||
admin/services/forge.chapril.org.1627552226.txt.gz · Dernière modification : 2021/07/29 09:50 de pilou
