GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Menginstal HTTP Git Server di Ubuntu 20.04 LTS

Dalam tutorial ini, kami akan menunjukkan kepada Anda cara menginstal HTTP Git Server di Ubuntu 20.04 LTS. Bagi Anda yang belum tahu, HTTP Git Server adalah proyek open-source yang menggunakan server web Nginx untuk melayani repositori Git melalui Jaringan Area Lokal (LAN) Anda. Server HTTP Git ternyata mudah disiapkan dan dikelola.

Artikel ini mengasumsikan Anda memiliki setidaknya pengetahuan dasar tentang Linux, tahu cara menggunakan shell, dan yang terpenting, Anda meng-host situs Anda di VPS Anda sendiri. Instalasi cukup sederhana dan mengasumsikan Anda sedang berjalan di akun root, jika tidak, Anda mungkin perlu menambahkan 'sudo ' ke perintah untuk mendapatkan hak akses root. Saya akan menunjukkan kepada Anda melalui langkah-demi-langkah instalasi HTTP Git Server di Ubuntu 20.04 (Focal Fossa). Anda dapat mengikuti instruksi yang sama untuk Ubuntu 18.04, 16.04, dan distribusi berbasis Debian lainnya seperti Linux Mint.

Prasyarat

  • Server yang menjalankan salah satu sistem operasi berikut:Ubuntu 20.04, 18.04, 16.04, dan distribusi berbasis Debian lainnya seperti Linux Mint.
  • Sebaiknya Anda menggunakan penginstalan OS baru untuk mencegah potensi masalah.
  • Seorang non-root sudo user atau akses ke root user . Kami merekomendasikan untuk bertindak sebagai non-root sudo user , namun, karena Anda dapat membahayakan sistem jika tidak berhati-hati saat bertindak sebagai root.

Instal HTTP Git Server di Ubuntu 20.04 LTS Focal Fossa

Langkah 1. Pertama, pastikan bahwa semua paket sistem Anda mutakhir dengan menjalankan apt berikut perintah di terminal.

sudo apt update
sudo apt upgrade
sudo apt install fcgiwrap apache2-utils unzip

Langkah 2. Menginstal Nginx di Ubuntu 20.04.

Nginx tersedia di repositori default Ubuntu. Untuk menginstalnya, jalankan perintah berikut:

sudo apt install nginx

Setelah penginstalan selesai, jalankan perintah untuk mengaktifkan Nginx untuk memulai secara otomatis saat server Anda mulai:

sudo systemctl stop nginx
sudo systemctl start nginx
sudo systemctl enable nginx

Mengonfigurasi firewall.

Sementara itu, Anda perlu memastikan bahwa firewall Anda dikonfigurasi untuk mengizinkan lalu lintas pada port HTTP (80) dan HTTPS (443). Nginx mendaftarkan dirinya sebagai layanan dengan ufw :

sudo ufw allow in "Nginx Full"

Langkah 3. Menginstal Git di Ubuntu 20.04.

Jalankan perintah berikut di bawah ini untuk menginstal Git di sistem Ubuntu Anda:

sudo apt install git

Konfirmasi Git penginstalan:

git --version

Langkah 4. Buat Repositori Git.

Sekarang kita membuat direktori untuk menyimpan repositori Git:

mkdir /var/www/html/idroot-repo

Selanjutnya, ubah direktori menjadi idroot-repo dan buat direktori lain untuk pengguna:

cd /var/www/html/myrepo
mkdir user.git

Sekarang kita akan menginisialisasi repositori dengan perintah:

cd user.git
git --bare init

Selanjutnya, update Git Server dengan perintah:

git update-server-info

Berikan repositori kepemilikan yang benar dengan perintah:

chown -R www-data:www-data /var/www/html/idroot-repo
chmod -R 755 /var/www/html/idroot-repo

Setelah itu, buat pengguna bernama user dan atur kata sandi untuk membatasi akses ke repositori git menggunakan otentikasi dasar HTTP:

htpasswd -c /var/www/html/idroot-repo/htpasswd user

Langkah 5. Konfigurasikan Nginx untuk Melayani Repositori Git.

Sekarang kita membuat file konfigurasi virtual host Nginx untuk melayani repositori Git:

nano /etc/nginx/conf.d/git.conf

Tambahkan baris berikut:

server {
        listen 80;

        root /var/www/html/idroot-repo;

        # Add index.php to the list if you are using PHP
        index index.html index.htm index.nginx-debian.html;

        server_name git.your-domain.com;

        location / {
                # First attempt to serve request as file, then
                # as directory, then fall back to displaying a 404.
                try_files $uri $uri/ =404;
        }

location ~ (/.*) {
    client_max_body_size 0; 
    auth_basic "Git Login"; 
    auth_basic_user_file "/var/www/html/idroot-repo/htpasswd";
    include /etc/nginx/fastcgi_params; 
    fastcgi_param SCRIPT_FILENAME /usr/lib/git-core/git-http-backend; 
    fastcgi_param GIT_HTTP_EXPORT_ALL "";
    fastcgi_param GIT_PROJECT_ROOT /var/www/html/idroot-repo;
    fastcgi_param REMOTE_USER $remote_user;
    fastcgi_param PATH_INFO $1; 
    fastcgi_pass  unix:/var/run/fcgiwrap.socket;
}

}

Simpan dan tutup file, lalu mulai ulang layanan Nginx untuk menerapkan perubahan:

nginx -t
sudo systemctl restart nginx

Langkah 6. Hubungkan ke Repositori Git Dari Klien.

Pertama, buat direktori untuk proyek Anda dengan perintah berikut:

mkdir my-project

Selanjutnya, navigasikan ke direktori proyek Anda dan inisialisasi Git menggunakan perintah:

cd my-project
git init

Kami merekomendasikan pengaturan Git Anda untuk memasukkan email dan nama pengguna. Untuk melakukannya, jalankan perintah berikut:

git config --global user.email "[email protected]"
git config --global user.name "user"

Setelah itu, tambahkan repositori Git jarak jauh Anda dengan perintah berikut:

git remote add origin http://[email protected]/user.git

Selanjutnya, buat direktori bernama dev dan tambahkan file di dalamnya:

mkdir dev
echo "This is my first my application" > dev/file

Kita sekarang dapat menambahkan file-file tersebut ke git dengan perintah:

git add .

Komit perubahan dengan perintah:

git commit -a -m "Add files and directories"

Kemudian, dorong semua direktori dan file yang baru kita buat ke server dengan perintah:

git push origin master

Setelah Anda terhubung, Anda akan mendapatkan output berikut:

Counting objects: 8, done.
Writing objects: 100% (4/4), 512 bytes | 346.00 KiB/s, done.
Total 8 (delta 0), reused 0 (delta 0)
To http://git.your-domain.com/user.git
 * [new branch]      master -> master

Anda juga dapat mengunduh repositori Anda dari server Git secara langsung menggunakan perintah berikut:

git clone http://[email protected]/user.git

Selamat! Anda telah berhasil menginstal HTTP Git Server. Terima kasih telah menggunakan tutorial ini untuk menginstal HTTP Git Server pada sistem Focal Fossa Ubuntu 20.04 LTS Anda. Untuk bantuan tambahan atau informasi berguna, kami sarankan Anda periksa situs web resmi Git.


Ubuntu
  1. Cara Menginstal HTTP Git Server Dengan Nginx di Ubuntu 16.04

  2. Cara Memasang Server Minecraft di Ubuntu 18.04 LTS

  3. Cara Menginstal HTTP Git Server dengan Nginx di Ubuntu 20.04

  1. Cara Menginstal Nginx di Ubuntu 20.04

  2. Cara Menginstal HTTP Git Server dengan Nginx di Ubuntu 18.04 LTS

  3. Cara Menginstal Wacana di Ubuntu 20.04 LTS

  1. Cara menginstal Ubuntu Server 18.04 LTS

  2. Cara Menginstal Docker di Server Ubuntu 18.04 LTS

  3. Cara Memasang Server Ubuntu 20.04 LTS