Cara Deploy Web Github di CyberPanel Dengan Protokol SSH
Hai DomaiNesians! Mengelola website dengan menghubungkannya ke GitHub melalui CyberPanel bisa menjadi solusi cerdas untuk pengembangan yang lebih terorganisir. Dengan memanfaatkan protokol SSH, kita dapat melakukan deploy Web GitHub di CyberPanel atau sebaliknya dengan mudah. Panduan ini akan membantu memahami langkah-langkah untuk menghubungkan repository GitHub ke website di CyberPanel secara efisien. Meskipun proses ini terlihat teknis, dengan langkah yang terperinci, kita bisa menyelesaikannya dengan lancar. Yuk, kita mulai menjelajahi prosesnya bersama!
Mengapa Butuh Deploy Web GitHub?
Deploy web GitHub adalah proses menghubungkan repository di GitHub dengan server hosting, seperti CyberPanel, untuk menyinkronkan kode aplikasi atau website. Dengan menggunakan perintah Git, kita bisa mengunggah perubahan kode dari lokal ke GitHub atau menarik pembaruan dari GitHub ke server. Fitur ini sangat berguna ketika bekerja dalam tim, karena memungkinkan kolaborasi yang lebih terstruktur dan terpusat.
Fungsi ini sangat membantu ketika banyak anggota tim terlibat dalam pengembangan website. Setiap perubahan kode dapat dilacak, dikelola, dan diintegrasikan dengan baik melalui GitHub. Sayangnya, pada CyberPanel versi 2.4, fitur Git Manager mengalami bug yang menyebabkan fungsi ini tidak dapat digunakan. Namun, jika menggunakan versi CyberPanel yang lebih baru, bug ini mungkin sudah diperbaiki, jadi pastikan untuk memeriksa versi yang digunakan.
Panduan ini mengharuskan pembaca memiliki akun GitHub terlebih dahulu agar proses deploy dapat dilakukan. Akun GitHub akan digunakan untuk membuat repository dan mengelola kunci SSH yang diperlukan. Berikut adalah beberapa skenario di mana deploy web GitHub sangat berguna:
- Kolaborasi tim: Memungkinkan beberapa pengembang untuk bekerja pada proyek yang sama dengan kontrol versi yang jelas.
- Otomatisasi deploy: Menghemat waktu dengan mengunggah perubahan kode langsung ke server.
- Pemulihan cepat: Memudahkan rollback ke versi sebelumnya jika terjadi masalah pada website.
- Pengujian dan staging: Memungkinkan pengujian kode di lingkungan staging sebelum diterapkan ke produksi.
Dengan deploy web GitHub, kita bisa mengatasi skenario-skenario tersebut dengan lebih efisien, menjaga alur kerja yang rapi, dan memastikan website tetap berjalan dengan baik.
Mengakses Dashboard CyberPanel dan Console VPS
Nah, DomaiNesians! Setelah memahami pentingnya deploy web GitHub, saatnya kita memulai langkah praktis. Untuk memulai, kita perlu mengakses dashboard CyberPanel dan console VPS. Dalam panduan ini, CyberPanel versi 2.4 dengan lisensi gratis dan sistem operasi Ubuntu 22.04 akan digunakan. Perlu dicatat bahwa antarmuka atau alur instalasi mungkin sedikit berbeda jika menggunakan versi atau lisensi CyberPanel yang lain.
Untuk mengakses CyberPanel, kita perlu mengetahui alamat IP VPS terlebih dahulu. IP ini dapat ditemukan melalui Dashboard VPS MyDomaiNesia. Setelah mendapatkan IP, tambahkan port 8090 pada URL, misalnya http://192.168.1.1:8090. Jika lupa dengan IP VPS, cukup kunjungi dashboard MyDomaiNesia untuk melihat detailnya.
Membuat Kunci SSH di VPS
Untuk menghubungkan GitHub dengan CyberPanel, kita memerlukan kunci SSH yang dibuat melalui console VPS. Kunci ini akan digunakan untuk mengamankan koneksi antara server dan repository GitHub. Untuk membuat kunci SSH, jalankan perintah berikut di console VPS:
1 |
ssh-keygen -t rsa -f ~/.ssh/nama-domain_github_rsa -C "nama-domain.com github auto push" |
Setelah menjalankan perintah tersebut, kunci SSH akan berhasil dibuat dan siap digunakan. Untuk melihat isi kunci publik yang dihasilkan, gunakan perintah berikut:
1 |
cat /root/.ssh/nama-domain_github_rsa.pub |
Kunci ini akan disalin pada langkah selanjutnya untuk membuat kunci deploy di GitHub, jadi simpan dengan baik.
Membuat Repository GitHub Baru
Jika belum memiliki repository di GitHub, kita perlu membuatnya terlebih dahulu untuk menghubungkannya dengan website di CyberPanel. Jika sudah memiliki repository, langkah ini bisa dilewati. Untuk membuat repository baru, masuk ke akun GitHub, lalu klik ikon plus pada navbar di pojok kanan atas dan pilih โNew repositoryโ.
Isi detail yang diperlukan, seperti nama repository, deskripsi, dan pengaturan lainnya, lalu klik โCreate Repositoryโ untuk menyelesaikan pembuatan.
Membuat Kunci Deploy Repository
Setelah memiliki repository, kita perlu menambahkan kunci deploy untuk mengizinkan akses dari CyberPanel. Buka repository di GitHub, lalu klik tab โSettingsโ.
Di halaman Settings, cari menu โDeploy Keysโ pada bagian Security di sidebar.
Klik tombol โAdd deploy keyโ di sebelah header. Pada halaman โAdd newโ yang muncul, masukkan judul untuk kunci deploy dan salin kunci SSH dari file nama-domain_github_rsa.pub yang telah dibuat sebelumnya.
Pastikan opsi โAllow write accessโ sudah dicentang, lalu klik โAdd keyโ untuk menyimpan. Beberapa pengguna mungkin perlu melakukan konfirmasi GitHub sudo untuk menambahkan kunci ini.
Jika kunci berhasil ditambahkan, kunci tersebut akan muncul pada tabel deploy keys di halaman Settings.
Untuk menguji koneksi SSH dari VPS ke GitHub, jalankan perintah berikut di console VPS:
1 |
ssh -T nama-domain.com |
Jika koneksi berhasil, akan muncul pemberitahuan โYouโve successfully authenticatedโ, yang menandakan bahwa SSH telah terhubung dengan baik.
Pengaturan Git di VPS
Setelah kunci deploy berhasil ditambahkan, saatnya mengatur Git di VPS agar koneksi dengan GitHub berfungsi. Pertama, kita perlu mengatur file SSH config dengan membuat atau mengedit file berikut:
1 |
nano ~/.ssh/config |
Isi file tersebut dengan konfigurasi seperti ini:
1 2 3 4 |
Host nama-domain.com HostName github.com User git IdentityFile ~/.ssh/nama-domain.com_github_rsa |
Simpan file dengan menekan Ctrl+X, lalu ketik Y dan Enter.
Selanjutnya, buat file .gitignore di folder root website untuk mengatur file atau direktori yang tidak ingin disinkronkan ke GitHub. Jalankan perintah berikut:
1 |
nano /home/nama-domain.com/.gitignore |
Isi file tersebut dengan baris berikut:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
# Ignore hidden files and directory .* !/.gitignore !/public_html/.* # Ignore backup and logs directory /backup/ /logs/ # Optional, but recommended: # Ignore WordPress upload folder /public_html/wp-content/uploads # if you want to ignore wp-config.php file /public_html/wp-config.php |
Simpan file dengan Ctrl+X, lalu ketik Y dan Enter.
Akses direktori public_html website dengan perintah:
1 |
cd /home/nama-domain.com/public_html |
Inisialisasi Git dengan perintah:
1 |
git init |
Daftarkan repository GitHub sebagai remote dengan perintah:
1 |
git remote add origin nama-domain.com:github-username/nama-repository.git |
Pastikan โnama-domain.comโ sesuai dengan nama Host yang digunakan di file SSH config. Selanjutnya, daftarkan email dan nama untuk konfigurasi Git:
1 2 |
git config user.email "dinda@domainesia.com" git config user.name "Nama Mu" |
Deploy Web GitHub
Setelah semua konfigurasi selesai, saatnya melakukan deploy web GitHub ke folder public_html. Tambahkan semua file ke Git dengan perintah:
1 |
git add . |
Lakukan commit pertama dengan perintah:
1 |
git commit -m "commit pertama" |
Atur branch utama dengan perintah:
1 |
git branch -M main |
Lalu, push perubahan ke GitHub dengan perintah:
1 |
git push -u origin main |
Untuk memastikan perubahan telah berhasil, buka halaman repository di GitHub dan periksa apakah kode sudah terunggah.
Deploy GitHub Ternyata Mudah!
Proses deploy web GitHub di CyberPanel dengan protokol SSH ternyata tidak serumit yang dibayangkan. Dari membuat kunci SSH, menyiapkan repository, hingga mengatur Git di VPS, semua langkah telah dijelaskan secara rinci. Dengan panduan ini, kita bisa menghubungkan website di CyberPanel dengan GitHub untuk pengelolaan kode yang lebih baik, terutama dalam kolaborasi tim atau otomatisasi deploy.
Selamat DomaiNesians! kita telah berhasil menjalankan proses ini! Semoga panduan ini memudahkan perjalanan pengembangan website. Sampai jumpa di artikel dan panduan DomaiNesia selanjutnya!