GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Menginstal Gitea di Ubuntu 20.04

Gitea adalah server git self-hosted yang cepat dan mudah digunakan yang ditulis dalam Go. Ini termasuk editor file repositori, pelacakan masalah proyek, manajemen pengguna, pemberitahuan, wiki bawaan, dan banyak lagi.

Gitea adalah aplikasi ringan dan dapat diinstal pada sistem berdaya rendah. Jika Anda mencari alternatif untuk Gitlab dengan jejak memori yang jauh lebih kecil dan Anda tidak membutuhkan semua fitur yang ditawarkan Gitlab, maka Anda harus mencoba Gitea.

Artikel ini menjelaskan cara menginstal dan mengkonfigurasi Gitea di Ubuntu 20.04.

Prasyarat #

Gitea mendukung backend database SQLite, PostgreSQL, dan MySQL/MariaDBas.

SQLite hanya direkomendasikan untuk instalasi kecil. Instalasi yang lebih besar harus menggunakan MySQL atau PostgreSQL.

Kami akan menggunakan SQLite sebagai database untuk Gitea. Jika SQLite tidak diinstal pada sistem Ubuntu Anda, instal dengan memasukkan perintah berikut sebagai pengguna sudo:

sudo apt updatesudo apt install sqlite3

Menginstal Gitea #

Gitea menyediakan gambar Docker dan dapat diinstal dari sumber, biner, dan sebagai paket. Kami akan menginstal Gitea dari biner.

Instal Git #

Langkah pertama adalah menginstal Giton server Anda:

sudo apt updatesudo apt install git

Verifikasi instalasi dengan menampilkan versi Git:

git --version
git version 2.25.1

Buat pengguna Git #

Buat pengguna sistem baru yang akan menjalankan aplikasi Gitea dengan mengetik:

sudo adduser \   --system \   --shell /bin/bash \   --gecos 'Git Version Control' \   --group \   --disabled-password \   --home /home/git \   git

Perintah di atas membuat pengguna dan grup baru bernama git , dan atur direktori home ke /home/git . Outputnya akan terlihat seperti di bawah ini:

Adding system user `git' (UID 112) ...
Adding new group `git' (GID 118) ...
Adding new user `git' (UID 112) with group `git' ...
Creating home directory `/home/git' ...

Unduh biner Gitea #

Buka halaman Unduh Gitea dan unduh biner terbaru untuk arsitektur Anda. Pada saat penulisan, versi terbaru adalah 1.10.2. Jika ada versi baru yang tersedia, ubah VERSION variabel dalam perintah di bawah ini.

Gunakan wget untuk mengunduh biner Gitea di /tmp direktori:

VERSION=1.14.1sudo wget -O /tmp/gitea https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64

Anda dapat menjalankan gitea biner dari lokasi manapun. Kami akan mengikuti konvensi dan memindahkan biner ke /usr/local/bin direktori:

sudo mv /tmp/gitea /usr/local/bin

Jadikan biner dapat dieksekusi:

sudo chmod +x /usr/local/bin/gitea

Jalankan perintah di bawah ini untuk membuat direktori dan mengatur izin dan kepemilikan yang diperlukan:

sudo mkdir -p /var/lib/gitea/{custom,data,log}sudo chown -R git:git /var/lib/gitea/sudo chmod -R 750 /var/lib/gitea/sudo mkdir /etc/giteasudo chown root:git /etc/giteasudo chmod 770 /etc/gitea

Struktur direktori di atas direkomendasikan oleh dokumentasi resmi Gitea.

Izin dari /etc/gitea direktori diatur ke 770 sehingga wizard penginstalan dapat membuat file konfigurasi. Setelah penginstalan selesai, kami akan menetapkan izin yang lebih ketat.

Buat File Unit Sistem #

Kami akan menjalankan Gitea sebagai layanan systemd.

Unduh contoh file unit systemd ke /etc/systemd/system direktori dengan mengetik:

sudo wget https://raw.githubusercontent.com/go-gitea/gitea/main/contrib/systemd/gitea.service -P /etc/systemd/system/

Anda tidak perlu mengedit file, ini dikonfigurasi agar sesuai dengan pengaturan kami.

Aktifkan dan mulai layanan Gitea:

sudo systemctl daemon-reloadsudo systemctl enable --now gitea

Verifikasi bahwa Gitea sedang berjalan:

sudo systemctl status gitea
● gitea.service - Gitea (Git with a cup of tea)
     Loaded: loaded (/etc/systemd/system/gitea.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2021-05-06 05:32:04 UTC; 7s ago
   Main PID: 77781 (gitea)
      Tasks: 6 (limit: 470)
     Memory: 130.6M
     CGroup: /system.slice/gitea.service
             └─77781 /usr/local/bin/gitea web --config /etc/gitea/app.ini
...

Konfigurasi Gitea #

Sekarang setelah Gitea diunduh dan dijalankan, kita dapat menyelesaikan penginstalan melalui antarmuka web.

Secara default, Gitea mendengarkan koneksi pada port 3000 di semua antarmuka jaringan.

Jika Anda memiliki firewall UFW yang berjalan di server Anda, Anda harus membuka port Gitea. Untuk mengizinkan lalu lintas pada port 3000 , masukkan perintah berikut:

sudo ufw allow 3000/tcp

Buka browser Anda, ketik http://YOUR_DOMAIN_IR_IP:3000 , dan layar seperti berikut akan muncul:

Pengaturan Basis Data:

  • Jenis Basis Data:SQLite3
  • Jalur:Gunakan jalur absolut, /var/lib/gitea/data/gitea.db

Pengaturan Umum Aplikasi:

  • Judul Situs:Masukkan nama organisasi Anda.
  • Jalur Root Repositori:Biarkan var/lib/gitea/data/gitea-repositories default .
  • Jalur Akar Git LFS:Biarkan /var/lib/gitea/data/lfs default .
  • Jalankan Sebagai Nama Pengguna:git
  • Domain Server SSH:Masukkan domain atau alamat IP server Anda.
  • Port SSH:22, ubah jika SSH mendengarkan di Port lain
  • Port Mendengarkan HTTP Gitea:3000
  • URL Basis Gitea:Gunakan http dan alamat IP domain atau server Anda.
  • Jalur Log:Biarkan /var/lib/gitea/log default
Anda dapat mengubah pengaturan kapan saja dengan mengedit file konfigurasi Gitea.

Untuk memulai penginstalan, tekan tombol “Instal Gitea”.

Instalasinya instan. Setelah selesai, Anda akan diarahkan ke halaman login.

Klik pada "Butuh akun? Daftar sekarang." tautan. Pengguna terdaftar pertama secara otomatis ditambahkan ke grup Admin.

Ubah izin file konfigurasi Gitea menjadi hanya-baca menggunakan:

sudo chmod 750 /etc/giteasudo chmod 640 /etc/gitea/app.ini

Itu dia. Gitea telah diinstal pada mesin Ubuntu Anda.

Mengonfigurasi Nginx sebagai Proksi Penghentian SSL #

Langkah ini opsional, tetapi sangat disarankan. Pengakhiran SSL berarti Nginx akan bertindak sebagai titik perantara antara aplikasi Gitea dan klien web sehingga Anda dapat mengakses Gitea melalui HTTPS.

Untuk menggunakan Nginx sebagai proxy terbalik, Anda harus memiliki domain atau subdomain yang menunjuk ke IP publik server Anda. Dalam contoh ini, kita akan menggunakan git.example.com .

Pertama, instal Nginx dan buat sertifikat SSL Let's Encrypt gratis menggunakan panduan di bawah ini:

  • Cara Menginstal Nginx di Ubuntu 20.04
  • Amankan Nginx dengan Let's Encrypt di Ubuntu 20.04

Setelah selesai, buka editor teks Anda dan edit file blok server domain:

sudo nano /etc/nginx/sites-enabled/git.example.com
/etc/nginx/sites-enabled/git.example.com
server {
    listen 80;
    server_name git.example.com;

    include snippets/letsencrypt.conf;
    return 301 https://git.example.com$request_uri;
}

server {
    listen 443 ssl http2;
    server_name git.example.com;

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

    client_max_body_size 50m;

    # Proxy headers
    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;

    # SSL parameters
    ssl_certificate /etc/letsencrypt/live/git.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/git.example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/git.example.com/chain.pem;
    include snippets/letsencrypt.conf;
    include snippets/ssl.conf;

    # log files
    access_log /var/log/nginx/git.example.com.access.log;
    error_log /var/log/nginx/git.example.com.error.log;

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

Jangan lupa untuk mengganti git.example.com dengan domain Gitea Anda dan mengatur jalur yang benar ke file sertifikat SSL. Lalu lintas HTTP dialihkan ke HTTPS

Mulai ulang layanan Nginx agar perubahan diterapkan:

sudo systemctl restart nginx

Selanjutnya, ubah domain Gitea dan url root. Untuk melakukannya, buka file konfigurasi dan edit baris berikut:

sudo nano /etc/gitea/app.ini
/etc/gitea/app.ini
[server]
DOMAIN           = git.example.com
ROOT_URL         = https://git.example.com/

Mulai ulang layanan Gitea dengan mengetik:

sudo systemctl restart gitea

Pada titik ini, proxy Gitea telah dikonfigurasi, dan Anda dapat mengaksesnya di:https://git.example.com

Mengonfigurasi Notifikasi Email #

Jika Anda ingin instans Gitea Anda mengirim email pemberitahuan, Anda dapat menginstal Postfix atau menggunakan beberapa layanan surat transaksional seperti SendGrid, MailChimp, MailGun, atau SES.

Untuk mengaktifkan notifikasi email, buka file konfigurasi dan edit baris berikut:

sudo nano /etc/gitea/app.ini
/etc/gitea/app.ini
[mailer]
ENABLED = true
HOST    = SMTP_SERVER:SMTP_PORT
FROM    = SENDER_EMAIL
USER    = SMTP_USER
PASSWD  = YOUR_SMTP_PASSWORD

Pastikan Anda memasukkan informasi server SMTP yang benar.

Mulai ulang layanan Gitea agar perubahan diterapkan:

sudo systemctl restart gitea

Untuk memverifikasi pengaturan dan mengirim email percobaan, masuk ke Gitea, dan buka:Administrasi Situs> Konfigurasi> Konfigurasi Mailer SMTP.

Gitea juga memungkinkan Anda terhubung ke Slack dengan membuat webhookan dan mengirim notifikasi ke saluran Slack Anda.

Mengupgrade Gitea #

Untuk meningkatkan ke versi Gitea terbaru, cukup unduh dan ganti binernya.

  1. Hentikan layanan Gitea:

    sudo systemctl stop gitea
  2. Unduh versi Gitea terbaru dan pindahkan ke /usr/local/bin direktori:

    VERSION=<THE_LATEST_GITEA_VERSION>wget -O /tmp/gitea https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64sudo mv /tmp/gitea /usr/local/bin
  3. Jadikan biner dapat dieksekusi:

    sudo chmod +x /usr/local/bin/gitea
  4. Mulai ulang layanan Gitea:

    sudo systemctl restart gitea

Itu dia.


Ubuntu
  1. Cara Menginstal Docker Di Ubuntu 18.04

  2. Cara Menginstal Apache di Ubuntu 18.04

  3. Cara Menginstal MariaDB 10.4 di Ubuntu 18.04

  1. Cara Menginstal MongoDB di Ubuntu 18.04

  2. Cara Menginstal Jenkins di Ubuntu 18.04

  3. Cara Menginstal ClickHouse di Ubuntu 20.04

  1. Cara Menginstal KVM di Ubuntu 20.04

  2. Cara Menginstal Webmin di Ubuntu

  3. Cara Menginstal Wayang di Ubuntu 20.04