Deploy laravel 11 dari localhost ke Cpanel menggunakan CI/CD Github [Part1]
Kali ini saya akan berbagi pengalaman kepada mas/mbak yang sedang membaca ocehan saya ini 😄. Sebenarnya saya sudah lama sekali ingin belajar Bagaimana cara deploy project localhost ke server sekaligus cara update code berkala. Nah sekarang saat yang tepat karena bulan maret 2025 ini sedang tidak mengerjakan proyek 🙃. Sharing kali ini saya menggunakan Laravel 11 untuk projectnya, github untuk CI/CD project, dan cPanel sebagai servernya. Kalau kalian malas baca apa itu CI/CD, just info saja kalau intinya CI/CD itu proses integrasi project local kalian dengan project yang ada di server. Jadi setiap kali ada perubahan, kalian tinggal update/push project kalian ke gitHub dan nanti di cPanel tinggal generate/pull dari gitHub.
Pastikan sudah punya server (cPanel) yang bisa akses SSH dan terminal
Pastikan sudah punya project laravel
Database MySQL
Silahkan ikuti langkah-langkahnya dan jangan skip satupun:
1. Buat Repository gitHub Silahkan membuat repository github (private). Kenapa private? Masak iya coding project client kalian mau ditaruh di repository public?. Bagi yang belum punya akun gitHub silahkan buat dan buat repository baru.
2. Inisialisasi git pada Project Buka project Laravel kalian (disini saya pakai vscode) dan buka terminal (terminal (bagian atas vscode) -> new terminal) dan ketikkanÂ
git init
3. Hubungkan Project Laravel dengan Repository Ketikkan perintah dibawah ini satu per satuÂ
Setelah mengikuti command diatas, pastikan repository gitHub yang kalian buat berisi project laravel seperti pada localhost kalian. Mungkin jika kalian baru pertama kali pakai gitHub ketika masukkan perintah git remote add origin... akan mendapatkan error. Saya lupa persis peringatan errornya, namun intinya permission denied. Solusinya adalah kalian harus konekkan laptop/pc kalian ke gitHub kalian. Berikut tutorialnya.Â
4. Buat key SSH Access di cPanel Silahkan login ke cPanel kalian. cari menu SSH Access lalu klik Manage Access dan klik Generate New Key. Silahkan isi Password dan simpan di note yang aman, karena password ini akan selalu berguna pada proses sinkronisasi. Kalau sudah pastikan terdapat list id_rsa cPanel kalian.
List key5. Hubungkan SSH key ke gitHub Setelah membuat key, selanjutnya silahkan copy public key diatas. Selanjutkan buka gitHub -> setting (foto profil) -> SSH dan GPG Keys -> klik New SSH Key -> pastekan key public dari cPanel tadi. Hasilnya seperti gambar dibawah ini:Key gitHub6. Cloning project dari gitHub ke cPanel Silahkan buat folder di file_manager cPanel terlebih dahulu (diluar public_html) untuk menampung hasil cloning project kalian (nama folder bebas). Selanjutnya silahkan buka terminal di cPanel kalian, masuk ke folder yang sudah dibuat tadi. Lalu ketikkan command berikut:
git clone git@github.com:UserName/xxx.git
Kalian bisa temui command git@github.... di repository gitHub kalian (bagian Code->SSH).
7. Konfigurasi Project Laravel di cPanel Setelah kalian memastikan bahwa project sudah ter-cloning dengan baik di folder yang kalian buat, ada beberapa hal yang harus kalian konfigurasi untuk project laravel kalian.
Silahkan file .env.example ganti ke .env. Ubah username, password, dan nama database.
Silahkan jalankan command di terminal cPanel kalian
composer install
php artisan key:generate
Setelah itu pindahkan semua isi folderpublic pada folder laravel kalian ke public_html. Ingat ya isi foldernya saja.
Setelah itu silahkan kalian masuk ke folder public_html dan silahkan ubah index.php seperti gambar dibawah (sesuaikan nama folder dimana kalian cloning project dari gitHub tadi)nama folder dengan tanda garis merahSelanjutnya silahkan test website kalian. Tutorial part 2 berisi bagaimana cara sinkronisasi project localhost dengan server ketika ada update code. Silahkan klik link ini.