Cara Self-Host Woodpecker CI di VPS (Panduan Lengkap)
Woodpecker CI adalah sistem Continuous Integration dan Continuous Deployment (CI/CD) bersumber terbuka. Melakukan self-hosting dapat menyederhanakan pipeline pengembangan Anda sambil memungkinkan Anda mengontrol lingkungan Anda. Dalam panduan ini, kami akan memandu Anda melalui langkah-langkah menginstal dan mengonfigurasi Woodpecker CI di VPS menggunakan Docker.
Prasyarat
- VPS: Pilih penyedia VPS. Berikut perbandingan opsi VPS populer untuk hosting Woodpecker CI Anda:
| Penyedia VPS | Biaya Bulanan | RAM | CPU | Penyimpanan |
|---|---|---|---|---|
| Contabo VPS | 5,99 EUR | 4 GB | 2 | 300 GB |
| Hetzner Cloud | 4,15 EUR | 2 GB | 1 | 20 GB |
| DigitalOcean | 6 USD | 1 GB | 1 | 25 GB |
| Vultr | 6 USD | 1 GB | 1 | 25 GB |
| Linode (Akamai Cloud) | 5 USD | 2 GB | 1 | 50 GB |
Pilih penyedia yang sesuai dengan kebutuhan Anda, memperhatikan kinerja dan anggaran. Untuk perbandingan VPS lengkap, cek perbandingan VPS lengkap.
-
Sistem Operasi: Pastikan Anda menggunakan sistem operasi yang sesuai, idealnya Ubuntu 20.04 atau lebih baru.
-
Docker: Instal Docker di VPS Anda.
Langkah 1: Menyiapkan Docker
Untuk menginstal Docker di Ubuntu, jalankan perintah berikut:
sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install docker-ce
Setelah instalasi, periksa bahwa Docker berjalan:
sudo systemctl start docker
sudo systemctl enable docker
sudo systemctl status docker
Langkah 2: Menginstal Woodpecker CI
- Tarik Gambar Docker Woodpecker CI:
Gunakan perintah berikut untuk menarik gambar Docker Woodpecker CI:
docker pull woodpeckerci/woodpecker
- Buat dan Jalankan Container Woodpecker CI:
Sekarang Anda memiliki gambarnya, buat container. Anda perlu mengatur berbagai variabel lingkungan berdasarkan konfigurasi Anda:
docker run -d \
--name woodpecker \
--volume /var/lib/woodpecker:/data \
-e WOODPECKER_GITEA_SERVER=https://your-gitea-instance.com \
-e WOODPECKER_RPC_SECRET=your-rpc-secret \
-e WOODPECKER_SERVER=true \
-p 8000:8000 \
woodpeckerci/woodpecker
Sesuaikan WOODPECKER_GITEA_SERVER dan WOODPECKER_RPC_SECRET sesuai dengan instance Gitea Anda atau layanan Git lain yang Anda gunakan.
Langkah 3: Mengonfigurasi Woodpecker CI
-
Akses Antarmuka Web: Buka browser web Anda dan navigasikan ke
http://<ip-vps-anda>:8000. Anda akan melihat antarmuka Woodpecker CI. -
Daftarkan Webhook: Jika menggunakan Gitea, pastikan Anda mendaftarkan webhook untuk menghubungkan repositori Anda dengan Woodpecker CI agar dapat memicu build.
-
Integrasi dengan Layanan Lain: Sesuaikan kebutuhan proyek Anda dengan mengintegrasikan notifikasi atau langkah deploy dengan mengedit
.woodpecker.yml.
FAQ
1. Apa manfaat self-hosting Woodpecker CI dibandingkan menggunakan layanan SaaS?
Self-hosting Woodpecker CI memberikan kontrol penuh atas lingkungan build Anda, memungkinkan Anda menyesuaikan konfigurasi sesuai kebutuhan proyek. Anda bisa menghindari batasan yang ditetapkan oleh layanan pihak ketiga, seperti kuota waktu build dan akses terhadap log kode sumber. Selain itu, self-hosting meningkatkan privasi, karena kode dan data Anda tetap berada di infrastruktur sendiri.
2. Bisakah saya melakukan skalasi instance Woodpecker CI berdasarkan kebutuhan trafik?
Ya, salah satu keunggulan utama menggunakan Docker adalah skalabilitas. Jika Anda melihat lonjakan penggunaan CI/CD, Anda bisa menyesuaikan jumlah instance Woodpecker CI atau menambah sumber daya di VPS Anda. Pertimbangkan menggunakan alat orkestrasi container seperti Kubernetes atau Docker Compose untuk mengelola beberapa instance dan melakukan skalasi secara efektif.
3. Bagaimana proses backup dan restore saat self-hosting Woodpecker CI?
Pastikan melakukan backup secara rutin terhadap folder data Woodpecker CI (/var/lib/woodpecker) untuk menghindari kehilangan data. Gunakan solusi backup dari penyedia VPS Anda atau buat script backup tar secara rutin pada direktori data Woodpecker. Jika terjadi kerusakan data atau kehilangan, cukup restore data yang dibackup ke direktori yang sama, lalu restart container Woodpecker CI.
Dengan mengikuti langkah-langkah ini, Anda akan memiliki instance Woodpecker CI yang berjalan sepenuhnya di VPS Anda. Pengaturan ini memungkinkan proses pengembangan yang lebih efisien, sesuai dengan kebutuhan unik Anda. --- akhir ---