Coding

Cara Mudah Deploy Node.js di cPanel: Panduan Lengkap untuk Pemula

3 min read
Admin Admin

Daftar Isi

Hosting aplikasi Node.js di cPanel mungkin terdengar menakutkan bagi pemula. Tapi tenang, dengan panduan step-by-step ini, kamu bakal bisa deploy aplikasi Node.js dengan mudah di cPanel hosting kamu!

Persyaratan Dasar

  • Hosting cPanel dengan akses SSH
  • Node.js app yang sudah siap di-deploy
  • Domain atau subdomain yang aktif
  • Basic knowledge tentang command line

Metode 1: Setup Node.js via cPanel Application Manager

cPanel Node.js Setup
  1. Login ke cPanel

    Buka dashboard cPanel kamu dan login dengan kredensial yang valid.

  2. Cari Setup Node.js App

    Di bagian 'Software', cari dan klik 'Setup Node.js App' atau 'Application Manager'.

  3. Create Application

    Klik tombol 'Create Application' dan isi detail berikut:

    • Node.js version (pilih versi yang sesuai)
    • Application mode (Production/Development)
    • Application root (direktori aplikasi)
    • Application URL (domain/subdomain)
    • Application startup file (biasanya app.js atau index.js)

Metode 2: Manual Setup via SSH

# Login via SSH
ssh [email protected]

# Install NVM (Node Version Manager)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash

# Reload shell configuration
source ~/.bashrc

# Install Node.js
nvm install node  # Latest version
# atau
nvm install 16    # Specific version

Upload dan Setup Aplikasi

1. Upload File Aplikasi

Ada beberapa cara upload aplikasi ke server:

Baca juga: Tutorial Lengkap Membuat Dashboard Analitik Real-time dengan React
  • Git clone (jika repo private)
  • File Manager cPanel
  • FTP/SFTP client
# Masuk ke direktori aplikasi
cd ~/nodeapp

# Install dependencies
npm install --production

# Test aplikasi
node app.js

Konfigurasi Process Manager

Untuk menjaga aplikasi tetap running, kita perlu process manager. PM2 adalah pilihan populer:

# Install PM2
npm install -g pm2

# Start aplikasi
pm2 start app.js --name "myapp"

# Auto-start setelah server reboot
pm2 startup
pm2 save

Setup Reverse Proxy

Buat file .htaccess di public_html atau subdomain folder:

Artikel terkait: Hasilkan Uang dengan HTML dan CSS! 5 Cara Mudah Menghasilkan Penghasilan Tambahan Sambil Belajar Coding
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ http://127.0.0.1:3000/$1 [P,L]

Penting!

Ganti port 3000 dengan port yang digunakan aplikasi kamu. Pastikan juga mod_proxy dan mod_rewrite sudah aktif di server.

Artikel terkait: Integrasi SSO di Multiple Aplikasi Dalam 15 Menit! Begini Cara Mudahnya

Environment Variables

Ada beberapa cara setting environment variables:

1. File .env

PORT=3000
NODE_ENV=production
DB_URL=mongodb://...

2. PM2 Ecosystem

module.exports = {
apps: [{
name: "myapp",
env: {
PORT: 3000
}
}]
}

Monitoring dan Maintenance

PM2 Monitor

pm2 monit

View Logs

pm2 logs

Restart App

pm2 restart myapp

Troubleshooting

Error: Port already in use

Cek dan kill process yang menggunakan port tersebut:

lsof -i :3000
kill -9 [PID]

502 Bad Gateway

  • Cek apakah aplikasi running (pm2 list)
  • Verifikasi konfigurasi proxy
  • Periksa error logs

Tips Deployment

Best Practices

  • Selalu backup sebelum update
  • Gunakan process manager (PM2)
  • Monitor memory usage
  • Setup error logging
  • Implement security best practices

Script Deployment

#!/bin/bash
# deploy.sh

# Pull latest changes
git pull origin main

# Install dependencies
npm install --production

# Build if needed
npm run build

# Restart app
pm2 restart myapp

# Save PM2 config
pm2 save

Kesimpulan

Hosting Node.js di cPanel mungkin butuh setup yang lebih kompleks dibanding shared hosting biasa, tapi dengan mengikuti panduan di atas, kamu bisa deploy aplikasi Node.js dengan aman dan reliable.

Next Steps

  • Setup monitoring tools
  • Implement CI/CD pipeline
  • Configure automatic backups
  • Setup error notification system