Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. PHP

Rapid Web Deployment untuk Laravel Dengan GitHub, Linode, dan RunCloud.io

by
Difficulty:IntermediateLength:LongLanguages:
Sponsored Content

This sponsored post features a product relevant to our readers while meeting our editorial guidelines for being objective and educational.

Indonesian (Bahasa Indonesia) translation by Andy Nur (you can also view the original English article)

Jika kamu seorang programmer PHP yang bekerja dengan framework Laravel, saya yakin kamu menyebarkan aplikasi web mu di clud server pada penyedia seperti Linode, Digital Ocean, Vultr dan sisanya. Itu karena dengan framework seperti Laravel, yang bekerja erat dengan tool seperti Git dan Composer, semakin kecil kemungkinan aplikasimu dapat dilayani dari lingkungan kerja shared hosting.

Artikel ini akan menunjukkan cara menyiapkan server web mu untuk aplikasi Laravel mu di hosting cloud Linode menggunakan tool manajemen server RunCloud.io.

Kita akan menggunakan Git di samping fitur GitHub's Webhook. Ketika semuanya selesai, kita bisa melakukan commit dan push ke GitHub, dan servermu akan diperbarui dengan kode sumber terbaru. RunCloud memudahkan untuk menyiapkan servermu agar bisa men-deploy aplikasimu seperti ini, dan saya akan menunjukkan cara melakukannya hari ini.

Tentu saja, kamu bisa memilih branch mana pun yang kamu inginkan untuk mengambil server live. Ini bisa menjadi master atau branch lain yang kamu tetapkan, yang berarti bahwa metode deployment ini sangat ideal untuk menggabungkan alur kerja dengan lingkungan kerja staging dan production.

Juga, saya harus menyebutkan bahwa ini tidak terbatas pada repositori GitHub. Ini akan bekerja dengan GitLab, Bitbucket, dan mungkin juga layanan hosting Git lainnya, selama mereka memiliki fitur kunci Webhook dan Deployment.

Juga layak disebutkan adalah bahwa RunCloud bekerja dengan penyedia cloud hosting manapun. Linode dipilih semata-mata sebagai contoh penyedia cloud hosting yang sesuai.

Sebelum kita memulai, saya ingin kamu tahu bahwa kamu akan menginstal server web Nginx, yang paling sesuai dengan Laravel. Namun, RunCloud memiliki pilihan untuk menginstal server web Apache juga, sehingga kamu dapat memanfaatkan konfigurasi .htaccess.

Saya akan melewatkan bagian tentang pendaftaran karena saya yakin kamu bisa berkeliling dengan cepat dan mudah.

Jika sudah siap, mari kita mulai.

Deploy Server Ubuntu 16.04 LTS di Linode

Saat kamu masuk ke dashboard mu di Linode.com, kamu hanya perlu men-deploy linode baru (mereka menyebut contoh layanan mereka sebagai "linode"). Di kanan bawah dashboard, kamu harus melihat tautan yang bertuliskan Add a Linode.

Adding a Linode

Selanjutnya, kamu pilih instance linode yang kamu inginkan dan pusat data tempat kamu ingin linode mu ditempatkan, dan klik tombol Add this Linode.

Selecting a Linode Instance

Sekarang, kamu seharusnya memiliki linode yang menunjukkan status Being Created.

Linode Manager

Setelah ini selesai, kamu akan memiliki server kosong. Kamu masih perlu men-deploy gambar untuk sistem operasi server ini. Dan untuk membuatnya nanti bekerja dengan RunCloud, kamu perlu men-deploy sistem operasi Ubuntu 16.04 LTS yang baru.

Klik pada nama linode. Pada contoh di atas, namanya adalah linode4362539. Ini akan membawamu ke screenshot berikutnya. Cukup klik pada link yang bertuliskan Deploy an Image.

Deploy an Image

Di sini, pastikan kamu memilih Ubuntu 16.04 LTS sebagai gambarnya. Selebihnya, kamu bisa memilih konfigurasi apa pun yang menurutmu tepat. Untuk ruang 20GB dan 1GB RAM linode ini, saya push disk swap saya ke setting maksimal, yaitu 512MB.

Masukkan password root mu dan simpan ini dengan aman. Kamu akan membutuhkannya lagi nanti. Bila sudah siap, klik tombol Deploy.

Deploying Linode Image

Sekarang, klik tombol Boot untuk menghidupkan server.

Kamu harus bisa melihat bahwa server linode mu tidak diberi label dengan Running pada kotak kanan widget. Mari kita coba hubungkan ke server mu dan lihat apakah itu bekerja. Klik pada tab Remote Access.

Linode Remote Access

Di tab Remote Access, kamu harus dapat melihat beberapa informasi lebih lanjut tentang server mu, termasuk alamat IP. Salin informasi ini dan simpan dengan aman. Kita akan membutuhkannya lagi segera.

Linode Remote Access Public IP

Untuk terhubung ke server mu, kamu dapat menggunakan klien SSH yang kamu kenal. Atau jika kamu seperti saya, dan kamu tidak ingin pergi dari browser, kamu juga bisa menggunakan klien SSH bawaan berbasis web di dalam Linode. Gulir ke bawah dan cari link yang bertuliskan Launch Lish Console.

Linode Remote Access

Mengklik link ini akan mengeksekusi Lish, klien SSH berbasis web. Cukup masukkan root sebagai nama pengguna dan kata kunci yang kamu buat saat men-deploy gambar.

Lish Console

Baik! Server mu siap dikonfigurasi dengan PHP, Nginx, dan MariaDB (dan tool lainnya). Di sinilah kamu akan menggunakan RunCloud.

Jika kamu belum mendaftarkan akun RunCloud, kamu perlu melakukan ini sekarang. Tidak ada risiko untuk mencoba RunCloud hanya untuk tutorial ini, karena ini akan memberimu percobaan gratis lima hari yang memberimu akses penuh ke semua fitur rancangan Pro sehingga kamu dapat mengujinya. Setelah periode lima hari berlalu, jika kamu tidak melakukan upgrade, jangan khawatir—kamu hanya diturunkan ke tingkat pengguna gratis mereka. Tapi hanya $10 per bulan untuk akun rancangan Pro, yang memungkinkan server tak terbatas, RunCloud adalah tool keren untuk dimiliki di gudang pengembangmu.

Jadi dari RunCloud, kita ingin menghubungkan Linode kita dan mengubahnya menjadi server web yang bekerja di Internet.

Dari Dashboard mu di RunCloud, klik tombol yang bertuliskan Connect a server di kanan atas.

Sambungkan Server Linode-mu ke RunCloud dan Mulai Konfigurasi Server Web-mu

Linode Server Connection Dashboard

Masukkan informasi yang diperlukan tentang servermu di Linode. Kamu dapat kembali ke Linode Dashboard untuk memeriksanya. Tetapi yang terpenting adalah alamat IP-mu. Pastikan kamu memiliki hak itu. Jika tidak, proses koneksi dan instalasi akan gagal.

Setelah kamu siap, klik pada Connect this server.

Linode Server Connection Options

Sekarang RunCloud akan menyajikan beberapa kode yang perlu kamu jalankan di server Linode-mu. Salin semua itu seperti yang akan kita jalankan di konsol Lish lagi setelah ini.

Linode Server Promopt

Jika kamu masih memiliki jendela Lish yang aktif, kamu dapat menempelkan skrip instalasi yang kamu salin dari dashboard RunCloud sebelumnya.

Lish Console

Paste kode skrip instalasi dan tekan tombol Enter. Setelah beberapa saat, saat kamu melihat dashboard RunCloud, kamu akan melihat bahwa RunCloud menampilkan progress bar dan pemberitahuan yang menampilkan perkembangan instalasi saat RunCloud menyinkronkan dirinya sendiri dengan server. Ini berarti koneksi telah dibuat.

Linode Server Installation Progress

Saat penginstalan selesai, kamu akan diberi password root ke database MariaDB-mu. Pastikan kamu menyimpan ini dengan aman. Ada juga pengguna MariaDB yang dibuat dengan username runcloud.

Lish Console

Setelah semuanya selesai, kamu dapat kembali ke Dashboard RunCloud dan memeriksa daftar server-mu. Kamu harus memiliki sebuah kotak dengan server baru-mu seperti ini.

New Linode Server

Server web-mu mungkin belum dimulai. Klik pada server itu untuk mulai mengelolanya. Screenshot di bawah ini adalah tampilan utama untuk mengelola server.

Jelajahi menu di sebelah kiri dan cari Services.

Linode Server Management

Di sini, kamu bisa menghidupkan Apache dan Nginx. Nantinya, saat membuat proyek aplikasi web-mu, kamu dapat memilih untuk menerapkan versi PHP beserta jenis server web yang ingin kamu jalankan: baik Apache-Nginx hybrid atau native Nginx.

Untuk saat ini, mari kita aktifkan layanan yang dibutuhkan.

Start Linode Server Services

Pada titik ini, kita harus bisa meluncurkan browser dan memasukkan alamat IP untuk server ini. Kamu harus mendapatkan default halaman situs web kosong dari RunCloud.

Default RunCloud Page

Membuat Aplikasi Web (Virtual Host) di Server-mu Menggunakan RunCloud

Setelah server-mu siap dan terhubung ke RunCloud, kamu bisa menggunakan RunCloud untuk mengelolanya. Saat mengelola server menggunakan SSH, membuat virtual host selalu merepotkan. Hal-hal yang jauh lebih mudah dengan RunCloud.

Sebelum kamu dapat menerapkan proyek Laravel-mu, kamu memerlukan tempat dimana aplikasi akan tinggal. Jadi sekarang kamu perlu membuat virtual host di server web-mu. Dalam tata nama RunCloud, ini disebut 'Web Application'.

Dari Dashboard RunCloud-mu, setelah memilih server-mu, cari menu Web Application dari sidebar kiri.

Server Web Application

Sekarang klik tombol Create Application.

Create Server Application

Pada layar berikutnya, kamu akan mengatur konfigurasi untuk aplikasi web-mu.

Application Configuration Options

Inil adalah setting yang saya pilih untuk itu. Tentu saja, kamu bebas menentukan nilaimu sendiri sesuai keinginanmu.

Mari saya jelaskan tentang nilai yang sedang ditetapkan.

Kamu dapat menetapkan nama apapun untuk aplikasi web-mu sebagai referensi untuk proyek-mu. Sedangkan untuk nama domain, tetapkan nama domain yang akan kamu gunakan untuk proyek tersebut. Nantinya, kamu akan dapat menetapkan nama domain tambahan untuk proyek tersebut. Biasanya, kamu ingin situs web-mu bekerja dengan dan tanpa sub-domain "www". Kita bisa menambahkannya nanti.

User mengacu pada pengguna Linux di server-mu. Kamu dapat membuat lebih banyak pengguna jika kamu ingin menugaskan proyek ini ke pengguna tertentu. Dan pengguna khusus ini akan memiliki akses ke server via SSH. Tapi saya hanya menggunakan pengguna runcloud default yang telah dibuat saat instalasi server.

Public Path adalah tempat folder web publik-mu berada. Secara default, aplikasi Laravel akan menggunakan folder "/public" untuk folder web yang dapat diakses publik. Semua map lain duduk di luar folder ini. Jadi itulah sebabnya kita menetapkan "/public" untuk ini.

Saya memilih versi PHP 7.1 terbaru. Dan akhirnya, untuk Web Application Stack, saya memilih Native NGINX. Pilihan lainnya adalah NGINX+Apache2 hybrid, yang memberimu akses ke file konfigurasi .htaccess. Tetapi saya memilih NGINX sepenuhnya untuk pilihan ini.

Pada titik ini, situs web-mu masih belum dapat berfungsi dengan domain-mu. Kita masih perlu mengaturnya dengan DNS yang benar. Mari kita lakukan itu di bagian selanjutnya.

Pengaturan Nama Domain, DNS, dan SSL

Pada bagian sebelumnya, saya menetapkan fotofaze.me sebagai nama domain. Tapi saya juga ingin www.fotofaze.me bekerja dengan aplikasi web ini juga. Jadi sebelum kita mengatur DNS, mari kita lakukan satu langkah lagi di RunCloud untuk server ini.

Setelah membuat Aplikasi Web-mu, kamu harus melihat dashboard aplikasi web-mu. Dari sini, klik tab Domain Name.

Web Application Domain Name

Kita bisa melihat bahwa kita sudah menjadikan fotofaze.me terdaftar. Saya masih perlu menambahkan www.fotofaze.me ke daftar. Cukup masukkan nama domain dan tekan tombol “Attach Domain Name”.

Attaching a Domain Name

Saya menggunakan Namecheap untuk nama domain saya. Dan sebagian besar adalah bahwa ia datang dengan server DNS bawaan. Jika tidak, kamu mungkin perlu menggunakan Layanan DNS CloudFlare atau Linode sendiri. Yang perlu kita lakukan adalah mengatur dua record DNS dalam manajemen DNS. Salah satunya adalah record A, dan yang lainnya adalah CNAME.

Dari Namecheap Domain Name List saya, saya klik tombol Manage.

Namecheap Domain List

Dari sini, saya klik pada tab Advanced DNS.

Namecheap Advanced DNS

Di sini, tidak peduli layanan DNS apa yang kamu gunakan, kita perlu mengatur data DNS berikut ini:

Beginilah pengaturan saya terlihat di Namecheap Advanced DNS.

Namecheap Advanced DNS Settings

Berikan beberapa saat agar perubahan DNS dapat diselesaikan sebelum kamu menguji situs web-mu di browser. Setelah perubahan aktif, kamu seharusnya mendapatkan NGINX 403 Error saat kamu mengunjungi situs-mu. Ini karena folder /public-mu saat ini kosong, namun ini memungkinkanmu mengetahui semuanya bekerja.

403 Forbidden Error

Salah satu bagian terakhir ketika menyangkut nama domain adalah mengaktifkan SSL. Ini memungkinkan situs web kita diakses dengan menggunakan protokol https:// pada port 443 dan bukan http:// pada port 80. Ada banyak keuntungan untuk ini. Terlepas dari tujuan keamanan, juga bagus untuk SEO.

Mari kembali ke Dashboard Aplikasi Web My-Laravel-App dan sekarang klik tab SSL/TLS. Sertifikat SSL digunakan untuk biaya ratusan dolar. Tetapi berkat Let's Encrypt, sekarang kita bisa men-deploy sertifikat SSL untuk nama domain kita secara gratis. Ini bisa jadi sangat teknis jika kamu menambahkan sertifikat SSL Encryption sendiri secara manual, namun dengan RunCloud, ini adalah sepotong kue proses-sekali-klik.

Web Application SSL

Setelah di sini, kamu dapat memilih Let's Encrypt sebagai SSL Method-mu. Dan kemudian klik tombol Submit.

Web Application Lets Encrypt SSL

Situs web-mu seharusnya bekerja dengan protokol https:// sekarang.

Membuat Database Aplikasi-mu

Karena kita akan men-deploy aplikasi Laravel, kita akan membutuhkan database. Mari kita lakukan sekarang. Telusuri menu sidebar kiri dan klik pada menu Database.

Application Database

Sekarang klik pada tombol Create Database.

Create Application Database

Cukup masukkan nama untuk database-mu dan klik pada tombol Add New Database.

Add New Database

Sekarang kita perlu menambahkan pengguna database dan menugaskannya ke database kita. Klik tombol Add User.

Add Database User

Sekarang masukkan saja username dan password. Dan kemudian klik tombol Add.

Database Username Password

Selanjutnya, kita menugaskan pengguna yang baru dibuat ke database yang dibuat sebelumnya. Klik pada ikon Attach User yang kecil pada daftar database-mu.

Attach Database User

Karena kamu hanya memiliki satu pengguna saat ini, pastikan saja bahwa itu dipilih dan kemudian klik pada tombol Attach.

Attach Database User

Setelah selesai, inilah yang akan kamu lihat. laraveluser sekarang terlampir pada database laravelapp.

User Attachment Screenshot

Sekarang kita hampir siap untuk melakukan beberapa pemrograman PHP dengan Laravel. Tapi sebelum itu, mari buat repositori proyek GitHub yang nantinya bisa kita push kode sumbernya.

Pengaturan Proyek GitHub-mu

Pengembang web tunggal biasanya mempertahankan tiga tempat di mana kode sumber mereka tinggal:

  1. Komputer lokal untuk development
  2. Layanan hosting Git (yaitu GitHub) untuk kolaborasi, kontrol versi, backup, dll.
  3. Server Live

Di bagian tutorial ini, kita akan membuat repositori proyek kita di GitHub. Nantinya, kita akan menggunakan repositori ini untuk mem-push pekerjaan dari lingkungan kerja development kita pada komputer lokal kita ke repositori proyek GitHub yang spesifik ini.

Di GitHub, jika kamu telah masuk, Kamu bisa mengklik ikon plus kecil (+) di sisi kanan bar bagian atas. Dan kamu harus melihat menu New Repository. Klik itu

New GitHub Repository

Cukup masukkan rincian proyekmu dengan sesuatu seperti di bawah ini. Klik pada tombol hijau yang bertuliskan Create Repository.

Create GitHub Repository

Kamu seharusnya memiliki pandangan seperti berikut sekarang.

GitHub Repository Setup

Area yang disorot dengan kotak merah adalah alamat repositori proyekmu di GitHub. Kita akan membutuhkan ini nanti saat kita mengatur perwakilan remote proyek dari komputer development lokal kita.

Sekarang kita siap untuk memulai development di komputer lokal kita dan mem-push kode ke GitHub.

Pengaturan Proyek Laravel-mu di Komputer Lokalmu

Di bagian tutorial ini, kita akan menyiapkan komputer lokal kita dengan versi development proyek Laravel kita. Nantinya, kita akan menguploadnya ke layanan hosting Git (kita akan menggunakan GitHub). Setelah itu, kita akan mendapatkan server Linode kita untuk mengambil beberapa kode dari GitHub sehingga server production kita akan selalu men-deploy kode sumber terbaru.

Sama seperti catatan samping, tutorial ini melewatkan bagian tentang pengaturan akun GitHub-mu dengan kunci SSH publikmu untuk komunikasi yang aman. Kita akan menggunakan layar terminal yang cukup banyak untuk SSH. Saya biasanya menggunakan Putty pada Windows.

Jika kamu baru mengenal GitHub, kamu mungkin ingin membaca tutorial tentang membuat dan mengatur mesin lokalmu dengan kunci SSH untuk digunakan dengan GitHub.

Mengelola Git deployment ke server live-mu dapat diatur dengan mudah dengan RunCloud. Begitu kita memiliki semua yang disiapkan, dengan Git push sederhana dari komputer lokalmu, kamu selalu dapat memastikan bahwa servermu akan mengambil pembaruan tersebut secara otomatis. Tidak ada FTP, tidak ada lagi instruksi command-line.

Cara termudah untuk memulai proyek Laravel adalah dengan menggunakan Composer. Jika kamu tidak terbiasa dengan Composer, pastikan kamu membaca tentang ini dan menginstalnya pada komputer lokalmu. Composer bukan hanya untuk Laravel. Composer akan membuat pengelolaan library dan dependensi untuk proyek PHP yang lebih lancar, dan penggunaannya dianggap tidak terpisahkan dengan pengembangan aplikasi PHP modern.

Buka tool terminal pilihanmu dan jalankan perintah berikut untuk membuat proyek Laravel.

Ini mungkin memerlukan beberapa saat karena Composer mendownload dan menginstal Laravel di komputermu. Composer akan membuat folder bernama my-laravel dan menyimpan semuanya di sana. Pertama, mari masuk ke folder ini.

Tentang file .env

Untuk memastikan aplikasi Laravel-mu bekerja dengan baik, kamu perlu mengatur pengaturan koneksi database-mu. Kamu bisa melakukannya dengan mengubah file .env. Gunakan teks editor yang kamu akrab dengannya dan ubah file ini. Inilah contoh file .env yang khas. Kamu bisa memperbaruinya sesuai kebutuhanmu sendiri.

Kembali ke tool command-line, pertama mari kita buat sebuah kunci untuk aplikasi laravel ini. Masukkan perintah berikut di terminal. Perintah berikut akan memperbarui file .env dengan key hash.

Sekarang mari kita inisialisasi untuk pelacakan Git.

Tentang Default .gitignore oleh Laravel

Mungkin saya juga harus menjelaskan sedikit tentang file .gitignore yang disertakan dengan Laravel. Kamu bisa melihat file ini dan melihat file mana yang tidak dilacak. Misalnya, .env yang menyimpan rincian koneksi database-mu tidak dilacak. Ini berarti, diasumsikan bahwa kamu akan menggunakan file .env yang berbeda untuk komputer lokalmu dan untuk server live-mu.

Pada bagian sebelumnya, saya berbicara tentang alamat repositori git remote-mu pada GitHub. Jalankan perintah di bawah ini dengan alamatmu sendiri.

Selanjutnya, kita akan memberitahukan proyek Git lokal kita dimana lokasi proyek kita di GitHub. Untuk itu, kita perlu menambahkan perwakilan repositori remote.

Jika Anda melakukannya dengan benar, proyekmu di GitHub seharusnya diperbarui dengan hal seperti ini. Jika kamu mengalami masalah, mungkin Git tidak disiapkan dengan benar di komputermu, atau kamu tidak menghasilkan kunci SSH lokalmu.

Periksa web GitHub untuk membantumu dengan itu.

GitHub Project Repository

Sekarang kita dapat mulai menyiapkan auto-deployment menggunakan web hooks dan triggers. Setelah kita memilikinya, kodemu akan dikirimkan secara otomatis ke servermu melalui RunCloud setiap kali kamu mem-push pekerjaanmu ke GitHub.

Pengaturan Git Web Hook di RunCloud

Untuk melakukan ini, pertama kita perlu membuat kunci deploy melalui panel RunCloud. Dari panel servermu, di menu sebelah kiri, kamu harus bisa menemukan menu berlabel Deployment Key.

Deployment Key Menu

Kamu seharusnya sudah memilikinya untuk pengguna runcloud. Jika kamu ingat, saat membuat Aplikasi Web, kita menyebutkan bahwa pengguna tersebut adalah runcloud.

Runcloud User Deployment Key

Klik ikon mata kecil untuk menampilkan kunci SSH untuk pengguna ini. Jika kamu mendapatkan sesuatu seperti ini, itu berarti kunci SSH tidak pernah dibuat untuk pengguna ini di masa lalu. Cukup klik OK agar kunci SSH baru akan dibuat.

SSH Key Not Created Prompt

Begitu tidak apa-apa, kamu akan disuguhkan layout seperti ini. Ini adalah kunci SSH yang perlu kamu masukkan di GitHub. Dengan ini, GitHub dapat mengenali pull request saat server ingin melakukan pull di pembaruan baru. Salin semua itu.

runcloud User Deployment Key

Sekarang mari menuju GitHub.

Menuju ke proyekmu dan klik pada tab yang bertuliskan Settings. Kemudian klik pada menu Deploy Keys di sidebar kiri.

GitHub Project Deploy Key

Karena kamu mungkin belum memiliki kunci, cukup klik tombol Add deploy key.

Add GitHub Project Deploy Key

Beri saja namanya dan kemudian kamu bisa memasukkan SSH Deploy Key-muy ang kita dapatkan dari RunCloud. Klik tombol Add key.

Add GitHub Project Deploy Key

Selanjutnya, kita akan menyiapkan Web Hook trigger. Web hook GitHub bekerja seperti ini—setiap kali kita mem-push pembaruan baru ke GitHub, kita dapat meminta GitHub memberitahukan layanan atau server lain tentang push baru tersebut. Dalam kasus ini, kita akan memberitahu GitHub untuk memberi tahu server live kita. Dan ini bisa dengan mudah dilakukan via RunCloud.

Di RunCloud, buka Aplikasi Web yang kamu buat sebelumnya. Dan klik pada tab berlabel Git.

RunCloud Git Menu

Gulir ke bawah dan masukkan rincian tentang repositorimu di GitHub. Beginilah ini terlihat untuk proyek yang telah kita lakukan pada tutorial ini. Anda dapat mengatur branch-mu sendiri untuk men-deploy langsung jika kamu tidak menginginkannya menjadi master. Tetapi untuk contoh ini, kita akan tetap dengan master.

Apa artinya ini ketika kamu mem-push branch master-mu ke GitHub, server live akan menganggapnya sebagai tanda untuk memperbarui kode sumber di server. Kemudian akan melakukan pull pada branch master dan memperbarui dirinya sendiri.

Jika sudah siap, klik pada tombol berlabel Attach Git Repository.

Attach Git Repository to Web Application

Ini adalah tampilan yang kamu dapatkan saat memperbarui aplikasi web-mu dengan Git deployment.

Successful Git Deployment Page

Kamu dapat melihat bahwa sekarang kamu memiliki URL Git WebHook. Ini adalah URL yang akan kita salin dan dimasukkan ke GitHub.

Sebelum melakukannya, mari kita sesuaikan skrip deployment pada server kita.

Skrip deployment adalah script bash yang dapat kamu gunakan untuk menginstruksikan servermu melakukan hal-hal tertentu sebelum atau sesudah GIT pull terjadi. Jika kamu menggunakan Laravel, kamu akan tahu bahwa Laravel sangat bergantung perintah artisan dan composer untuk memudahkan development dan deployment-mu.

Untuk mengubah skrip deployment, gulir ke bawah ke GIT Deployment Script di tab GIT untuk aplikasi web. Di sini, kamu bisa menambahkan script-mu sendiri untuk dijalankan. Pastikan menyertakan git di suatu tempat di dalam skrip depolyment-mu. Kamu bisa menulis skrip dengan Pengganti untuk penggunaan jangka pendek.

Git Deployment Script

Berikut adalah script yang saya gunakan.

Kamu bisa menggunakan script yang sama ini. Centang checkbox dan klik tombol Save.

Sekarang kembali ke atas. Kita masih perlu memasukkan URL Git Webhook kita ke GitHub.

Git Webhook URL

Copy URL ini, lalu kita lanjutkan ke GitHub. Di GitHub, lanjutkan ke repositori proyekmu. Kemudian klik pada tab Settings. Kemudian pada menu Webhooks dari sidebar. Dan kemudian pada tombol Add Webhook.

GitHub Add Webhook

Cukup paste URL Git WebHook yang kita dapatkan dari RunCloud ke kolom teks URL Payload. Pastikan kamu memilih application/json untuk Content type. Itu seharusnya cukup baik. Kemudian klik tombol Add Webhook.

GitHub Webhook Form

Sekarang, kita harus bisa melakukan Git push dari mesin lokal kita, dan server live akan diperbarui secara otomatis. Tapi masih ada satu hal yang perlu kita lakukan.

Jika kamu ingat, saya menulis tentang file gitignore dan .env. Karena kita menyertakan file .env di file .gitignore kita, aplikasi Laravel kita di server kehilangan file .env yang diperlukan. Kita perlu menciptakannya untuk memperbaiki situasi.

Kita bisa menggunakan SSH dan terminalnya. Sebagai alternatif, kita juga bisa menggunakan File Manager di dalam RunCloud. Anggap saja kamu menggunakan SSH seperti Putty atau tool terminal lainnya. Jika kamu ingat, sebelumnya aplikasi web ini dibuat dengan menggunakan pengguna runcloud. Pastikan kamu terhubung melalui SSH menggunakan pengguna itu juga.

Kamu perlu menelusuri ke folder aplikasi web-mu. Dan kemudian jalankan perintah berikut.

Jangan lupa memperbarui file .env-mu.

Sekarang kamu seharusnya memiliki file .env, dengan kunci hash yang dihasilkan. Kamu masih perlu memperbarui file ini dan memperbaruinya dengan pengaturan koneksi database-mu, sama seperti kamu membuatnya di langkah sebelumnya.

Mari Coba Git Push

Satu-satunya yang harus dilakukan sekarang adalah melakukan update pada mesin lokal dan push ke GitHub.

Saya melakukan edit sederhana di file welcome.blade.php di folder resources/views.

Notepad Screenshot

Mari lakukan commit dan kemudian push ke server.

Jika semuanya berjalan sesuai rencana, kamu bisa meluncurkan situs web di browser dan melihat perubahan yang baru saja kamu lakukan. Selamat—kamu baru saja memperbarui servermu tanpa harus menggunakan S/FTP upload.

Website Loaded Successfully
Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.