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