Uygulama

Forgejo’yu Debian 11’e nasıl kurulur – Güzel bir Gitea Çatalı

Merhaba arkadaşlar.  Bu yazıda Forgejo’yu Debian 11’e nasıl kuracağınızı öğreneceksiniz.

Forgejo Gitea’nın bir çatalıdır.  Bu durum, Gitea’nın bir şirket tarafından satın alınmasından kaynaklandı.Forgejo’nun web sitesine göre

Forgejo, kendi kendine barındırılan hafif bir yazılım platformudur.  Kurulumu kolay ve az bakım gerektirir, sadece işini yapar.

Açıkçası, açık kaynaktır, bu yüzden endişelenmeyin.  Aynı zamanda birçok kişi için önemli olabilecek bir avantaj da sunuyor; çok hafif olması ve bakımının kolay olması.

Neden bu kadar hafif?  Çünkü GO’da yapılmıştır ve iyi çalışması için doğru özelliklerle donatılmıştır.

Forgejo’nun Debian 11’e Kurulumu

Yapmamız gereken ilk şey sistemi yükseltmek.  Bir terminal açın ve root kullanıcı olarak çalıştırın.

apt update
apt upgrade

Bir sonraki adım git’i kurmaktır.  Bunu sistem depoları aracılığıyla yapmak en iyisidir.

apt install git

Forgejo, MySQL / MariaDB, PostgreSQL ve SQLite’yi desteklediği için veri yönetimi açısından bir harikadır.  Bu durumda MariaDB’yi tercih ettik.

MariaDB’nin Debian 11’e kurulumu ve Forgejo’ya hazırlanması

Bunu tamamlamak için aşağıdakileri çalıştırarak MariaDB’yi yükleyebilirsiniz:

apt install mariadb-server

İşiniz bittiğinde bir root şifresi belirleyebilirsiniz.

mysql_secure_installation

Daha sonra bunu aynı yapılandırma komut dosyasında yapılandırabilirsiniz.  Her soruya Y cevabını verebilir ve yapılandırabilirsiniz.

Bir sonraki adım veritabanını, kullanıcıyı ve şifreyi oluşturmaktır.

Bunu başarmak için MariaDB konsoluna erişin

mysql -u root -p

Daha sonra veritabanını oluşturun:

CREATE DATABASE forgejo;

Elbette istediğiniz herhangi bir isim olabilir.

Artık kullanıcı, şifresi ve yeni veritabanındaki izinleri için aşağıdaki komut girilir:

GRANT ALL PRIVILEGES ON forgejo.* TO 'forg'@'localhost' IDENTIFIED BY 'pass';

Verilen izinleri yenileyin ve konsoldan çıkın:

FLUSH PRIVILEGES;
EXIT;

Bu yeterli olacaktır.

Forgejo’yu Debian 11’e indirme ve yükleme

Bir sonraki adım git adında yeni bir sistem kullanıcısı oluşturmaktır.

adduser --system --shell /bin/bash --gecos 'Git control' --group --disabled-password --home /home/git git

Birkaç seçenek daha ekleyebilirsiniz ancak temel nokta Forgejo için bir kullanıcı oluşturmaktır.

Daha sonra wget’i kullanarak Forgejo’yu fazla sorun yaşamadan indirebilirsiniz.

wget -O /tmp/forgejo https://codeberg.org/forgejo/forgejo/releases/download/v1.18.5-0/forgejo-1.18.5-0-linux-amd64
Download Forgejo on Debian 11
Forgejo’yu Debian 11’e indirin

Bu yazıyı yazdığımız sırada en son kararlı sürüm 1.18.5’ti.

Şimdi Forgejo ikili dosyasını PATH’e eklenen bir yere taşıyın ve ona çalıştırma izinleri verin

mv /tmp/forgejo /usr/local/bin
chmod +x /usr/local/bin/forgejo

Daha sonra Forgejo için gerekli dizin yapısını oluşturun.  Hemen önceden oluşturulan kullanıcıya, bu durumda git’e ve gerekli izinlere sahip olun.

mkdir -p /var/lib/forgejo/{custom,data,log}
chown -R git:git /var/lib/forgejo/{custom,data,log}
chmod -R 750 /var/lib/forgejo/

Şimdi konfigürasyon dizinini oluşturun ve aynı şekilde ona izinler atayın ve git’i klasörün sahibi yapın:

mkdir /etc/forgejo
chown root:git /etc/forgejo
chmod 775 /etc/forgejo

Forgejo’yu yönetmenin en iyi yolu bir sistem hizmeti kullanmaktır.  Bunu başarmak için bir şablon indirip sisteme uygulamanız yeterlidir.

wget https://codeberg.org/forgejo/forgejo/raw/branch/forgejo/contrib/systemd/forgejo.service -P /etc/systemd/system/

Ardından sistem hizmetlerini yenileyin

systemctl daemon-reload

Ardından Forgejo hizmetini etkinleştirin ve başlatın

systemctl enable --now forgejo.service

Örnek çıktı:

Created symlink /etc/systemd/system/multi-user.target.wants/forgejo.service → /etc/systemd/system/forgejo.service.  

Nginx’i Forgejo için ters proxy olarak yapılandırma

İlk önce Nginx’i yükleyin

apt install nginx

Daha sonra Forgejo için bir yapılandırma dosyası oluşturun

nano /etc/nginx/sites-enabled/forgejo

Aşağıdakileri ekleyin

server {
    listen 80;
    server_name git.example.com;

}

server {

    server_name git.unixcop.com;

    proxy_read_timeout 720s;
    proxy_connect_timeout 720s;
    proxy_send_timeout 720s;

    client_max_body_size 50m;

    proxy_set_header X-Forwarded-Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Real-IP $remote_addr;


    access_log /var/log/nginx/git.unixcop.com.access.log;
    error_log /var/log/nginx/git.unixcop.com.error.log;

    location / {
       proxy_redirect off;
       proxy_pass http://127.0.0.1:3000;
    }
}

Buradan, sunucu_adı değerini değiştirmeniz ve bunu alan adınızın değeriyle değiştirmeniz gerekir.

Değişiklikleri kaydedin ve düzenleyiciyi kapatın.

Apply the changes by restarting nginx and forgejo.

systemctl reload nginx
systemctl restart forgejo

Not: İsteğe bağlı olarak certbot kullanarak HTTPS’yi etkinleştirebilir veya Nginx yapılandırma dosyasını sertifikalarınıza uyarlamak için değiştirebilirsiniz.

Forgejo kurulumunu tamamlama

Artık bir web tarayıcısıyla http://sunucu_adı veya ip_adresi erişebilirsiniz.

Göreceğiniz ilk şey veritabanı yapılandırmasıdır.  Orada yalnızca oluşturduğunuz kimlik bilgilerini girmeniz yeterlidir, hepsi bu.

Install Forgejo on Debian 11
Forgejo’yu Debian 11’e yükleyin

Ayrıca site başlığı vb. gibi diğer seçenekleri de girebilirsiniz.

Aşağıda yönetici kullanıcı oluşturabilirsiniz.  Başlamanız tavsiye edilir.

Creating the admin user for Forgejo
Forgejo için yönetici kullanıcı oluşturma

Daha sonra Forgejo’yu kullanmaya başlayabilirsiniz.

Forgejo Running
Forgejo Koşusu

Yazının orijinalini buradan okuyabilirsiniz.