Cara Melakukan Docker pada Aplikasi Node.js

Cara Melakukan Docker Pada Aplikasi Node Js



Melakukan Docker pada suatu aplikasi mencakup menentukan semua prasyarat yang diperlukan untuk menjalankan aplikasi dan kemudian memanfaatkan Dockerfile untuk membangun image Docker khusus yang dapat dibagikan dengan berbagai mesin. Melakukan Docker pada “ Node.js ” Aplikasi meningkatkan konsistensi, dan memastikan kemudahan proses debug di pihak pengembang.

Prasyarat







Prasyarat untuk melakukan dockerisasi pada “ Node.js ” aplikasinya antara lain sebagai berikut:



  • Instalasi Docker.
  • Pemahaman Dasar Aplikasi Node.js.

Bagaimana cara melakukan Docker pada Aplikasi Node.js?

A ' Node.js ” Aplikasi dapat di-docker melalui langkah-langkah berikut:



Langkah 1: Buat File “package.json”.





Pertama, buat direktori baru tempat semua file akan berada. Di dalam direktori ini, buatlah “ paket.json ” file yang mewakili aplikasi beserta dependensinya:

{
'nama' : 'buruh pelabuhan_web_aplikasi' ,
'Versi: kapan' : '1.0.0' ,
'keterangan' : 'Node.js di Docker' ,
'pengarang' : 'Pertama Terakhir' ,
'utama' : 'server.js' ,
'skrip' : {
'awal' : 'simpul server.js'
} ,
'ketergantungan' : {
'cepat' : '^4.18.2'
} }



Langkah 2: Buat File “package-lock.json”.

Di dalam file “package.json”, jalankan perintah “ instalasi npm ” cmdlet. Ini akan menghasilkan “ paket-lock.json ” file yang disalin ke image Docker, sebagai berikut:

npm Install

Langkah 3: Buat Server

Setelah itu, buatlah “ server.js ” file yang mendeklarasikan aplikasi web menggunakan “ Ekspres.js ' kerangka:

'gunakan ketat' ;

const express = memerlukan ( 'cepat' ) ;

konstan PORT = 8080 ;
konstanta HOST = '0.0.0.0' ;

aplikasi const = ekspres ( ) ;
aplikasi.dapatkan ( '/' , ( permintaan, soal ) = > {
kirim ulang ( 'Halo Dunia' ) ;
} ) ;

aplikasi.dengarkan ( PELABUHAN, TUAN RUMAH, ( ) = > {
konsol.log ( ` Berjalan di http: // ${Tuan Rumah} : ${PELABUHAN} ` ) ;
} ) ;

Sekarang, mari beralih ke metodologi untuk menjalankan aplikasi dalam container Docker melalui image Docker resmi.

Langkah 4: Buat Dockerfile

Buat Dockerfile secara manual dalam direktori yang sama yang berisi semua file. Di file ini, tulis baris kode berikut:

DARI simpul: 18
KERJADIR / usr / src / aplikasi
paket SALINAN * .json . /
JALANKAN npm Install
SALINAN. .
MEMBUKA 8080
CMD [ 'simpul' , 'server.js' ]

Dalam cuplikan kode di atas, terapkan langkah-langkah yang diberikan di bawah ini:

  • Pertama, gunakan node dukungan jangka panjang terbaru versi 18 sebagai gambar dasar yang terkandung di dalamnya Pusat Docker .
  • Setelah itu, buat direktori untuk memuat kode aplikasi pada gambar.
  • Ini mewakili direktori kerja untuk aplikasi tersebut.
  • Sekarang, instal dependensi aplikasi melalui “ npm ”.
  • Catatan: Jika npm versi 4 atau lebih lama digunakan, file “package-lock.json” tidak akan dibuat.
  • Sekarang, salin “ paket.json ” mengajukan. Selain itu, gabungkan kode sumber aplikasi ke dalam image Docker melalui “ MENYALIN ' petunjuk.
  • Manfaatkan “ MEMBUKA ” instruksi untuk membiarkan aplikasi mengikat ke port 8080.
  • Terakhir, tentukan cmdlet untuk menjalankan aplikasi melalui CMD yang menentukan runtime. Di sini, “ simpul server.js ” cmdlet akan digunakan untuk memulai server.

Langkah 5: Buat File “.dockerignore”.

Buat file “.dockerignore” di “ file buruh pelabuhan ” direktori/folder yang berisi konten yang diberikan di bawah ini:

node_modules
npm-debug.log

Konten ini menghindari modul lokal dan log debug, masing-masing untuk disalin ke image Docker.

Langkah 6: Bangun Citra

Sekarang, di dalam direktori yang berisi Dockerfile, buat image menggunakan cmdlet yang disebutkan di bawah:

membangun buruh pelabuhan. -T nodejs / node-web-app

Dalam cmdlet ini, “ nodejs ” mengacu pada nama direktori jadi tentukan cmdlet yang sesuai dan “ -T ” bendera menandai gambar.

Sekarang, daftarkan gambar melalui perintah ini:

gambar buruh pelabuhan

Langkah 7: Jalankan Gambar

Jalankan/jalankan gambar menggunakan cmdlet yang disebutkan di bawah ini:

menjalankan buruh pelabuhan -P 49160 : 8080 -D nodejs / node-web-app

Di sini, “ -P ” bendera mengalihkan port publik ke port pribadi di dalam wadah dan “ -D ” Bendera mengeksekusi kontainer dalam mode terpisah, yaitu di latar belakang.

Langkah 8: Hasilkan Output Aplikasi

Sekarang, cetak output aplikasi menggunakan perintah berikut:

buruh pelabuhan hal
log buruh pelabuhan 77b1e3c8576e

Jika ada kebutuhan untuk bernavigasi di dalam shell container, gunakan tombol “ eksekutif ” cmdlet:

buruh pelabuhan eksekutif -dia 77b1e3c8576e / tempat sampah / pesta

Di Sini, ' 77b1e3c8576e ” mewakili ID penampung yang dapat disalin melalui eksekusi “ buruh pelabuhan ps ” perintah sebelumnya.

Langkah 9: Menguji Aplikasi

Untuk menguji aplikasi, ambil port aplikasi yang dipetakan Docker:

buruh pelabuhan hal

Di cmdlet di atas, Docker memetakan “ 8080 ” port di dalam container ke port “ 49160 ” pada mesin.

Langkah 10: Memanggil Aplikasi

Panggil aplikasi melalui “ keriting ” cmdlet dengan mengacu pada port yang dipetakan di atas dan memasukkan nilai yang diperlukan:

keriting -Saya host lokal: 49160

Langkah 11: Tutup/Matikan Aplikasi

Terakhir, matikan aplikasi melalui “ membunuh ” cmdlet:

buruh pelabuhan membunuh 77b1e3c8576e

Konfirmasikan juga apakah aplikasi telah dihentikan melalui perintah ini dengan nilai input:

keriting -Saya host lokal: 49160

Kesimpulan

A ' Node.js ” Aplikasi dapat di-docker dengan membuat server, file docker, file “.dockerignore”, membuat dan menjalankan image, menghasilkan output aplikasi, serta menguji, menutup, dan mengonfirmasi penghentian aplikasi. Artikel ini menguraikan tentang dockerisasi aplikasi Node.js.