Forgejo adalah layanan Git open-source yang kuat dan berisi fitur lengkap yang memungkinkan pengelolaan proyek dan repositori Anda secara seamless. Men-deploy-nya di Virtual Private Server (VPS) memungkinkan Anda untuk memiliki kendali penuh atas data Anda dan menyesuaikan lingkungan sesuai kebutuhan. Panduan ini akan membahas langkah-langkah yang diperlukan untuk self-host Forgejo di VPS, mulai dari instalasi hingga konfigurasi.
Prasyarat
Sebelum memulai, pastikan Anda memiliki hal-hal berikut:
- VPS dengan minimal 1GB RAM dan 1 CPU core
- Nama domain yang mengarah ke VPS Anda (opsional namun direkomendasikan)
- Docker dan Docker Compose terinstal di VPS Anda
- Pengetahuan dasar tentang command line Linux
Memilih Penyedia VPS
Saat memilih penyedia VPS, pertimbangkan faktor seperti performa, harga, dan dukungan. Berikut perbandingan beberapa penyedia VPS terbaik yang cocok untuk menghosting Forgejo:
| Penyedia | Harga (per bulan) | RAM | Penyimpanan | Pusat Data |
|---|---|---|---|---|
| Contabo VPS | 5.99 EUR | 4 GB | 200 GB | Eropa |
| Hetzner Cloud | 4.15 EUR | 2 GB | 20 GB | Eropa |
| DigitalOcean | 6 USD | 1 GB | 25 GB | Global |
| Vultr | 6 USD | 1 GB | 25 GB | Global |
| Linode (Akamai Cloud) | 5 USD | 1 GB | 25 GB | Global |
Semua harga bersaing dan memberikan fondasi yang kokoh untuk self-host aplikasi seperti Forgejo. Cek perbandingan VPS lengkap untuk opsi lainnya.
Langkah 1: Menyiapkan VPS Anda
-
Akses VPS Anda: Gunakan SSH untuk login ke VPS Anda.
ssh root@ip_server_anda -
Perbarui Sistem: Pastikan VPS Anda terbaru.
apt update && apt upgrade -y -
Install Docker dan Docker Compose:
apt install docker.io docker-compose -y -
Mulai Layanan Docker:
systemctl start docker systemctl enable docker
Langkah 2: Menyebarkan Forgejo dengan Docker
-
Buat Direktori untuk Forgejo:
mkdir -p /opt/forgejo cd /opt/forgejo -
Buat File
docker-compose.yml:Gunakan editor teks favorit Anda untuk membuat file ini.
nano docker-compose.ymlTambahkan konten berikut:
version: '3' services: forgejo: image: forgejo/forgejo:latest environment: - GITEA__database__DB_TYPE=sqlite3 - GITEA__database__PATH=/data/gitea/gitea.db - GITEA__server__DOMAIN=domainkamu.com - GITEA__server__ROOT_URL=https://domainkamu.com volumes: - ./data:/data ports: - "3000:3000" - "22:22" restart: unless-stoppedSesuaikan
DOMAINdanROOT_URLdengan nama domain asli Anda. -
Mulai Forgejo:
docker-compose up -d
Langkah 3: Mengakses Forgejo
Setelah container berjalan, Anda dapat mengakses Forgejo melalui browser di http://domainkamu.com:3000. Selesaikan setup awal, termasuk pembuatan akun admin.
Opsional: Mengatur Reverse Proxy
Untuk keamanan yang lebih baik dan dukungan SSL, disarankan mengatur reverse proxy. Anda bisa menggunakan NGINX atau Traefik. Berikut contoh konfigurasi NGINX sederhana:
-
Instal NGINX:
apt install nginx -y -
Buat Konfigurasi NGINX:
nano /etc/nginx/sites-available/forgejoTambahkan konfigurasi berikut:
server { listen 80; server_name domainkamu.com; location / { proxy_pass http://localhost:3000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } -
Aktifkan Konfigurasi:
ln -s /etc/nginx/sites-available/forgejo /etc/nginx/sites-enabled/ nginx -t systemctl restart nginx
FAQ
1. Seberapa aman self-host Forgejo di VPS?
Self-host Forgejo di VPS bisa aman jika mengikuti praktik terbaik seperti selalu memperbarui perangkat lunak, menggunakan password yang kuat, dan mengatur firewall. Pastikan penyedia VPS Anda menawarkan perlindungan DDoS dan pilih lokasi data center yang sesuai dengan kebutuhan latensi dan keamanan Anda. Selain itu, lindungi instance Forgejo Anda dengan HTTPS agar data dalam transit terenkripsi. Periksa praktik keamanan di forum seperti r/selfhosted untuk rekomendasi lebih lengkap.
2. Apakah saya bisa menyesuaikan fitur Forgejo?
Ya, Forgejo sangat dapat disesuaikan. Anda dapat mengubah pengaturannya lewat panel administrasi sesuai kebutuhan. Forgejo mendukung berbagai metode autentikasi, izin repositori, dan fitur lainnya. Pelajari dokumentasi Forgejo untuk instruksi lengkap tentang kustomisasi dan cara mengintegrasikannya dengan alat CI/CD demi produktivitas yang lebih tinggi.
3. Bagaimana jika mengalami masalah saat instalasi?
Jika mengalami kendala selama pemasangan atau konfigurasi Forgejo, cari solusi di forum komunitas seperti r/selfhosted dan di GitHub issues. Pastikan juga versi Docker dan Docker Compose Anda terbaru, karena ketidakcocokan bisa menyebabkan masalah. Repositori Forgejo di GitHub juga menyediakan informasi dan dukungan pengguna yang berharga untuk troubleshooting.
Dengan mengikuti panduan ini, Anda kini memiliki instance Forgejo yang berjalan penuh di VPS Anda. Selamat berkoding dan self-host!