Tech Stack : NodeJs, Express, Prisma, @prisma/client, cors, dotenv and Mysql
1. Pertama
Siapkan file project yang sudah berjalan di local komputer dan lakukan compress pada file project yang di butuhkan, untuk folder node_modules tidak perlu ikut serta dalam compress file dikarenakan nantinya akan di setup melalui menu Setup Node.Js App pada cPanel.
2. Kedua
Login cPanel Hosting dan navigasikan ke menu Setup Node.Js App > Create Application sehingga tampilanya akan menjadi seperti berikut :
- Pertama pilih Node.Js Version dan Application mode ( production atau development )
- Kedua tentukan Application root - dalam tampilan di atas api-todoapp merupakan application rootnya ( berbentuk folder ) yang nantinya akan menyimpan file project aplikasinya.
- Ketiga tentukan Application URL nya - dalam tampilan diatas nantinya project backend akan diakses dengan url subdomain https://api-todoapp.codesync.id artinya API tidak lagi diakses dengan http://localhost untuk melakukan request data seperti ketika pengaplikasian pada local komputer.
- Keempat tentukan Application startup file. Dalam project ini startup file yang akan di jalankan adalah index.js disesuaikan dengan aplikasi masing masing.
- Kelima adalah CREATE.
Sebagai testing Node.Js berjalan dengan baik atau tidak bisa di cek dengan akses URL https://api-todoapp.codesync.id yang jika berkerja dengan baik tampilanya akan seperti berikut:
3. Ketiga
- Upload Project aplikasi ke cPanel > File Manager Hosting.
Folder api-todoapp merupakan Application root yang sebelumnya sudah buat ketika melakukan Setup Node.Js App, di folder tersebut adalah tempat dimana kita akan upload file project aplikasinya.
Setelah file upload selesai, hasil upload bisa langsung di extract dan hasilnya akan seperti berikut.
4. Keempat
Setup Database. cPanel > MySQL® Databases, Create New Database sesuai dengan nama database yang ada di lokal komputer dan Add New User > setup untuk username dan password [ pastikan username dan password sudah di save di note pribadi ] kemudian Add User To Database pilih user yang sudah di buat dan database yang baru di buat dilanjutkan dengan Manage User Privileges seperti tampilan berikut :
5. Kelima
Import Database. Lakukan export database project pada lokal komputer dan import ke hosting dengan cara ke menu cPanel > phpMyAdmin dan tampilan import database akan seperti berikut :
5. Keenam
Konfigurasi file .env - cPanel > File Manager > api-todoapp > .env
konfigurasi file .env ini sangat diperlukan dikarenakan untuk menyesuaikan environtment baru yang mana sebelumnya konfirgurasi koneksi database berjalan pada lokal komputer dan saat ini koneksi database terhubung dengan environtment hosting.
7. Ketujuh
Jalankan Setup Node.Js App - setelah melakukan konfigurasi pada file .env dilanjutkan dengan menjalankan setup nodeJs nya. Pastikan sebelum mejalankan aplikasi halaman browser sudah di refresh dan lakukan Restart pada Setup Node.Js App nya. Jalankan Run NPM Install dan hasilnya akan seperti message hijau Node.js NPM install completed successfully.
8. Kedelapan
Muncul Error 503 ketika mengakses URL API ***https://api-todoapp.codesync.id/*** setelah semua setup project sudah berhasil di install pada hosting dan pesan error logs pada file stderr.log
Dalam case project contoh ini terdapat error 503 dari hasil setup project aplikasinya.
Error terjadi karena Node.js mencoba menggunakan require()
untuk mengimpor modul ES (ECMAScript Module) yang tidak didukung dalam konteks CommonJS. Modul ES diidentifikasi dengan menggunakan ekstensi .mjs
atau memiliki kunci "type": "module"
di file package.json
.
sehingga ada penyesuaian pada file startup pada Setup Node.Js App nya untuk file index.js diganti menjadi index.mjs yang mana dari awal untuk project aplikasinya script / codenya dibuat dengan dengan Modul ES (import
).
9. Kesembilan
Berikut ini adalah tampilan ketika URL API backend bekerja. https://api-todoapp.codesync.id/tasks yang mana data sudah tampil dalam bentuk json file dan siap digunakan sebagai API data consume oleh aplikasi frontend.
Dengan ini tutorial Setup NodeJs untuk aplikasi backend telah selesai dan bisa berjalan dengan normal pada hosting. Untuk tutorial selanjutnya adalah Deploy aplikasi frontend https://todoapp.codesync.id yang mana nantinya aplikasi frontend ini akan melakukan fetch data ke aplikasi backend.
Top comments (0)