Deploy NodeJS ke Heroku

Heroku adalah sebuah cloud platform yang menjalankan bahasa pemrograman tertentu, Heroku mendukung bahasa pemrograman seperti Ruby, Node.js, Python, Java, PHP, dan lain-lain.

Heroku termasuk ke dalam kriteria Platform As A Service (PaaS), sehingga bagi anda yang ingin melakukan deploy aplikasi ke heroku cukup hanya dengan melakukan konfigurasi aplikasi yang ingin di deploy dan menyediakan platform yang memungkinkan pelanggan untuk mengembangkan, menjalankan, dan mengelola aplikasi tanpa kompleksitas membangun dan memelihara infrastruktur yang biasanya terkait dengan pengembangan dan peluncuran aplikasi.

Tahapan

  1. Register User di Heroku (https://www.heroku.com/)

  2. Menghubungkan git lokal dengan heroku (Download git : https://git-scm.com/downloads) Instal git terlebih dahulu, lalu instal Heroku CLI

  3. Instalasi heroku Heroku CLI (https://devcenter.heroku.com/articles/heroku-cli) Cek Heroku CLI melalui terminal : heroku -v

  4. Buat projek untuk di running di heroku

  5. Deploy dan Testing

File index.js

Tambahkan const PORT pada baris ke 4 dan tempatkan PORT pada baris ke-18.

process.env.PORT : menyesuaikan PORT yang disediakan di server Heroku

const app = require('express')();
const http = require('http').createServer(app);
const io = require('socket.io')(http);
const PORT = process.env.PORT || 3000;

app.get('/', (req, res) => {
//   res.send('<h1>Hello world</h1>');
res.sendFile(__dirname + '/index.html');
});

io.on('connection', (socket) => {
//   console.log('a user connected');
   socket.on('disconnect', () => {
     console.log('user disconnected');
    });
});

http.listen(PORT, () => {
  console.log('listening on *:3000');
});

File package.json

Tambahkan "start": "node index.js"

{
  "name": "socket-chat",
  "version": "1.0.0",
  "description": "my first socket.io app",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "start": "node index.js"
  },
  "keywords": [
    "socket.io",
    "chat",
    "express"
  ],
  "author": "rachmat",
  "license": "ISC",
  "dependencies": {
    "express": "^4.17.1",
    "socket.io": "^3.0.4"
  }
}

Buat File .gitignore

Buat sebuah file bernama .gitignore pada root folder project dimana isinya adalah sebagai berikut :

node_modules

Tujuan dari file ini adalah agar ketika project di upload ke server heroku maka file node_modules yang ada pada project lokal kita tidak ikut terupload, karena secara otomatis ketika kita melakukan push ke server heroku akan menginstal package-package yang sudah tertera di dalam file package.json.

Login Heroku CLI

Langkah selanjutnya adalah ketikan perintah heroku login di terminal kemudian login menggunakan akun yang didaftarkan sebelumnya.

heroku login

Langkah selanjutnya adalah ketikan peritah ini di terminal anda :

git init

Setelah itu, buatlah sebuah project di heroku dengan mengetikan perintah ini di terminal :

heroku apps:create chatmdp

Langkah selanjutnya adalah ketikan perintah ini di terminal :

git add .

Setelah itu ketikan perintah ini di terminal :

git commit -m "initial commit"

Setelah langkah diatas selesai dilakukan langkah terakhir adalah push project ke server heroku, ketikan perintah ini di terminal :

git push heroku master

Jika proses upload sudah selesai maka kita bisa tes aplikasi chat di browser dengan mengetikan perintah heroku open di terminal dan secara otomatis akan membukakan alamat web kita di browser.

Referensi

https://www.codepolitan.com/membuat-proyek-pertama-heroku-58b872c6217eb

Last updated

Was this helpful?