Projet

Général

Profil

Mise en place de Forgejo en 5 minutes

Téléchargement et configuration de Forgejo

On créé d'abord un nouvel utilisateur pour Forgejo :

sudo adduser --system --shell /bin/bash --gecos 'Forgejo user' --group --disabled-password --home /home/forgejo forgejo

On télécharge ensuite l'archive de la dernière version (pensez à vérifier la dernière version et à modifier le lien s'il y en a une plus récente) :

wget https://codeberg.org/forgejo/forgejo/releases/download/v10.0.1/forgejo-10.0.1-linux-amd64 -O forgejo

On va ensuite donner les droits d'execution puis réorganiser l'architecture et donner les droits d'accès :

chmod +x forgejo && sudo mv forgejo /usr/local/bin/ && sudo mkdir -p /var/lib/forgejo /etc/forgejo && sudo chown -R forgejo:forgejo /var/lib/forgejo /etc/forgejo && sudo mkdir /usr/local/bin/log && sudo mkdir /usr/local/bin/data && sudo chown forgejo /usr/local/bin/data && sudo chown forgejo /usr/local/bin/log

On génère maintenant la configuration :

sudo -u forgejo forgejo generate config --work-path /var/lib/forgejo --custom-path /etc/forgejo

Puis on créé un fichier de configuration pour Forgejo :

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

On va coller ceci dedans :

[Unit]
Description=Forgejo
After=network.target

[Service]
Type=simple
User=forgejo
Group=forgejo
WorkingDirectory=/var/lib/forgejo
ExecStart=/usr/local/bin/forgejo web --work-path /var/lib/forgejo --config /etc/forgejo/app.ini
Restart=always
Environment=USER=forgejo HOME=/home/forgejo

[Install]
WantedBy=multi-user.target

Creation de la base de données

Installez mysql si ce n'est pas déjà fait.

sudo apt install mysql-server

Connectez vous à la BDD :

sudo mysql -u root -p

Copiez-y ce code pour créer la base de donnée mais pensez bien à modifier le mot de passe !!

CREATE DATABASE forgejo CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'forgejo'@'localhost' IDENTIFIED BY 'mot_de_passe_solide';
GRANT ALL PRIVILEGES ON forgejo.* TO 'forgejo'@'localhost';
FLUSH PRIVILEGES;
EXIT;

On relance ensuite Daemon avant de lancer Forgejo.

sudo systemctl daemon-reexec
sudo systemctl daemon-reload

Activation de Forgejo

sudo systemctl enable --now forgejo

ou

sudo -u forgejo forgejo web --work-path /var/lib/forgejo --config /etc/forgejo/app.ini

Forgejo est maintenant accessible ici : http://localhost:3000