Cara Deploy Aplikasi Node.js di CentOS 7
Dalam tutorial ini, Anda akan mempelajari cara melakukan deploy aplikasi Node.js di server CentOS 7 menggunakan alat yang disebut Shipit. Shipit adalah alat otomatisasi dan deployment yang dapat membantu Anda mengelola proses build dan deployment aplikasi Node.js secara efisien.
Prasyarat
- Server dengan sistem operasi CentOS 7 terinstal.
- Akses ssh ke server Anda.
- Node.js dan npm (Node Package Manager) sudah terinstal di server.
- Git terinstal di server dan mesin lokal.
- Rsync terinstal di server dan mesin lokal.
Pastikan Anda memiliki pengetahuan dasar tentang penggunaan terminal, dan Anda sudah menyiapkan user dengan akses sudo di server Anda.
Langkah Utama
1. Menginstal Node.js dan npm
Jika Node.js dan npm belum terinstal di server Anda, Anda dapat menginstalnya dengan langkah-langkah berikut:
sudo curl -sL https://rpm.nodesource.com/setup_14.x | sudo bash -
sudo yum install -y nodejs
2. Menginstal Git dan Rsync
Selanjutnya, Anda perlu menginstal Git dan Rsync di server Anda. Jalankan perintah berikut:
sudo yum install git -y
sudo yum install rsync -y
3. Memasang Shipit
Setelah semua perangkat lunak yang diperlukan terinstal, Anda dapat memasang Shipit di proyek Node.js Anda. Pertama, navigasikan ke direktori proyek Anda, lalu jalankan:
npm install shipit-cli --save-dev
4. Mengonfigurasi Shipit
Setelah Shipit terpasang, Anda perlu membuat file konfigurasi Shipit. Buat file shipitfile.js di root proyek Anda dan masukkan konfigurasi berikut:
module.exports = function(shipit) {
require('shipit-deploy')(shipit);
shipit.initConfig({
default: {
workspace: '/tmp/workspace',
deployTo: '/var/www/myapp',
repositoryUrl: 'https://github.com/your-github-username/your-github-repository-name.git',
branch: 'main',
keeps: 5,
},
production: {
servers: 'user@your-server-ip',
},
});
};
Jangan lupa untuk mengganti your-github-username, your-github-repository-name, dan your-server-ip dengan informasi yang sesuai.
Konfigurasi Lanjutan
Setelah pengaturan dasar selesai, Anda dapat menambahkan beberapa fitur tambahan dalam konfigurasi Shipit Anda.
1. Menginstal Dependensi Node
Anda dapat menambahkan langkah untuk menginstal dependensi Node.js di server dengan menambahkan task berikut ke dalam file shipitfile.js:
shipit.on('deploy', function() {
shipit.remote('cd ' + shipit.releasePath + ' && npm install');
});
2. Menggunakan PM2 untuk Mengelola Proses Node.js
PM2 adalah manajer proses yang sangat efisien untuk aplikasi Node.js. Anda harus menginstalnya di server Anda:
sudo npm install -g pm2
Setelah itu, Anda dapat menambahkan task ke dalam konfigurasi Shipit untuk memulai aplikasi Anda dengan PM2:
shipit.on('deploy', function() {
shipit.remote('cd ' + shipit.releasePath + ' && pm2 start app.js');
});
Best Practices
- Selalu gunakan
gituntuk version control aplikasi Anda. - Jaga agar
node_modulestidak diupload ke repository dengan menambahkannya ke file.gitignore. - Gunakan variabel lingkungan untuk menyimpan informasi sensitif seperti kunci API dan password.
- Pastikan untuk mem-backup data penting sebelum melakukan deployment.
- Uji aplikasi Anda di lingkungan staging sebelum melakukan deployment ke produksi.
Troubleshooting
Berikut beberapa langkah pemecahan masalah yang dapat Anda lakukan jika terjadi masalah saat melakukan deploy:
- Periksa log error PM2 dengan menggunakan perintah:
pm2 logs. - Pastikan Anda memiliki akses ssh yang benar ke server Anda.
- Periksa konfigurasi Shipit untuk kesalahan ketik atau konfigurasi yang salah.
Kesimpulan
Dengan mengikuti tutorial ini, Anda telah belajar cara melakukan deploy aplikasi Node.js di CentOS 7 dengan menggunakan Shipit. Proses ini menyederhanakan alur kerja deployment dan memungkinkan Anda untuk melakukan update aplikasi dengan lebih cepat dan efisien. Selalu ingat untuk menerapkan best practices dalam setiap tahap pengembangan dan deployment Anda.
Jika Anda memerlukan bantuan lebih lanjut, jangan ragu untuk menghubungi kami.
Konsultasi Jasa Setup SekarangKeterangan:
- Tutorial ini ditulis dalam format HTML yang dapat di-render di web browser.
- Struktur tutorial mengikuti permintaan Anda dengan bagian-bagian yang jelas dan terperinci.
- Setiap langkah disajikan secara praktis dan informatif untuk memudahkan pembaca.
Verifikasi Teknis
Panduan ini disusun berdasarkan referensi teknis terbaru. Namun, konfigurasi server dapat bervariasi. Lihat sumber referensi asli →
📚 Artikel Terkait
Bun JavaScript Toolkit Alternatif Node.js
664 kata • Baca selengkapnya →
Bun JavaScript Toolkit: An Alternative to Node.js
541 kata • Baca selengkapnya →
Cara Install Banyak Versi Node.js dengan NVM
704 kata • Baca selengkapnya →
Cara Install Banyak Versi Node.js dengan Volta
811 kata • Baca selengkapnya →