# Panduan Step-by-Step: Setup Git Server Pribadi dengan Gogs

Di dunia pengembangan perangkat lunak, Gogs adalah platform ringan yang memungkinkan Anda untuk menjalankan server Git pribadi Anda sendiri. Dengan menggunakan Gogs, Anda dapat membuat repository Git lokal di komputer Anda dan mengelola kode Anda dengan cara yang aman dan efisien.

**Gogs** yang dikenal karena antarmuka pengguna yang bersih dan responsif, menawarkan berbagai fitur seperti manajemen akses, pelacakan masalah, wiki, dan banyak lagi. Hal ini membuatnya menjadi pilihan yang menarik bagi pengembang yang ingin kontrol penuh atas proyek mereka tanpa harus mengandalkan platform pihak ketiga.

Dengan menggunakan Gogs untuk repository Git lokal Anda, Anda dapat dengan mudah berkolaborasi dengan tim Anda atau bahkan melakukan pengembangan perangkat lunak secara individu. Gogs memberikan fleksibilitas dan keamanan yang Anda butuhkan untuk mengelola kode Anda, menjadikannya pilihan yang menarik di dunia pengembangan perangkat lunak modern.

Berikut configurasi pada gogs

## **Setup Database MariaDB**

Instal MariaDB dengan perintah:

```powershell
sudo apt install mariadb-server -y
```

Setelah terinstal, amankan server database dengan perintah:

```powershell
sudo mysql_secure_installation
```

Masuk ke consol mariadb dengan perintah:

```powershell
mysql -u root -p
```

Buat database yang akan digunakan Gogs:

```sql
CREATE SCHEMA `gogs` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
```

| Notes: disini menggunakan utf8 karena gogs meminta untuk digunakan pada system storage nya

Buat user untuk digunakan akses database nya:

```sql
GRANT ALL PRIVILEGES ON gogs.* TO 'gogs'@'localhost' IDENTIFIED BY 'PASSWORD';
```

muat ulang tabel izin (privilege tables) di database server:

```sql
FLUSH PRIVILEGES;
```

Keluar dari consol database:

```sql
exit;
```

## **Setup user and wget gogs**

buat user untuk digunakan gogs, disini menggunakan nama git:

```powershell
sudo adduser --system --group --disabled-password --shell /bin/bash --home /home/git --gecos 'Gogs User' git
```

Setelah membuat user untuk gogs, sekarang untuk mengunduh dan unzip gogs. Sebelum melakukan configurasi, pastikan untuk memilih versi di [**halaman unduh Gogs**](https://www.blogger.com/blog/post/edit/1680902636455767004/5727007082316014187#) untuk nomor rilis.

Download file gogs terbaru di dalam directory **/tmp** dengan perintah:

```powershell
wget -P /tmp https://dl.gogs.io/0.12.3/gogs_0.12.3_linux_amd64.tar.gz
```

Ekstrak arsip dan pindahkan ke /opt/gogs dengan perintah:

```powershell
sudo tar xf /tmp/gogs_*_linux_amd64.tar.gz -C /home/git
```

Ubah kepemilikan direktori Gogs baru dengan:

```powershell
sudo chown -R git: /home/git/gogs
```

## **Setup file systemd and start service**

Unduhan Gogs menyertakan file systemd yang dapat Anda salin dengan mudah dengan perintah:

```powershell
sudo cp /home/git/gogs/scripts/systemd/gogs.service /etc/systemd/system/
```

Setelah file berada di tempatnya, mulai dan aktifkan Gogs dengan perintah:

```powershell
sudo systemctl start gogs
sudo systemctl enable gogs
```

## **Instalasi dari GUI web**

Buka web browser dan arahkan ke `http://YOUR_IP:3000` (menggunakan IP atau domain server anda). Maka akan muncul tampilan seperti ini, dimana anda harus mengkonfigurasi parameter database.

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1758644807596/e5195e50-adff-4e96-8504-4edd7bb79654.png align="center")

Pastikan untuk memilih MySQL dari dropdown database dan isi yang berikut ini:

* **Host:** 127.0.0.1:3306
    
* **User:** gogs
    
* **Password:** kata sandi yang dibuat saat buat user gogs
    
* **Database Name:** gogs
    
* **Domain:** domain atau alamat IP host server anda
    

Selesai, Gogs kini aktif dan berjalan di server Anda.

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1758644814844/bf11446c-4e35-4ed9-be0c-8c2b494312f9.png align="center")
