GNU/Linux >> Belajar Linux >  >> Ubuntu

Panduan Docker:Aplikasi Dockerizing Nodejs Express di Ubuntu 18.04

Docker adalah proyek sumber terbuka yang menyediakan platform terbuka bagi pengembang dan sysadmin untuk membangun, mengemas, dan menjalankan aplikasi di mana saja sebagai wadah yang ringan. Docker mengotomatiskan penerapan aplikasi di dalam wadah perangkat lunak.

Nodejs adalah lingkungan run-time JavaScript open source. Ini multi-platform run-time, dapat diinstal di Linux, Windows, MacOS, FreeBSD, dll. Nodejs sangat berguna untuk membangun aplikasi server dan desktop.

Dalam tutorial ini, saya akan menunjukkan cara membuat gambar buruh pelabuhan untuk proyek aplikasi Nodejs Express yang ada di Ubuntu 18.04. Kita akan belajar tentang meng-docker aplikasi Nodejs, dan kemudian menerapkan aplikasi sebagai container ke lingkungan buruh pelabuhan menggunakan skrip pembuatan buruh pelabuhan.

Prasyarat

  • Ubuntu 18.04
  • Hak istimewa root

Apa yang akan kami lakukan

  1. Instal Docker CE
  2. Instal Docker-Compose
  3. Siapkan Proyek Nodejs Express
  4. Bangun Proyek
  5. Pengujian

Langkah 1 - Instal Docker CE

Dalam tutorial ini, kita akan menginstal edisi komunitas docker-ce dari repositori docker. Kami akan menginstal docker-ce community edition dan docker-compose yang mendukung compose file versi 3.

Sebelum menginstal docker-ce, instal dependensi docker yang diperlukan menggunakan perintah apt.

sudo apt install -y \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common

Sekarang tambahkan kunci buruh pelabuhan dan repositori dengan menjalankan perintah di bawah ini.

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release - cs) \
   stabil"

Instal paket docker-ce.

sudo apt install docker-ce

Setelah instalasi selesai, mulai layanan buruh pelabuhan dan aktifkan untuk diluncurkan setiap kali sistem boot.

systemctl start docker
systemctl aktifkan docker

Selanjutnya, kami akan memberikan hak istimewa pengguna normal untuk menjalankan dan mengelola wadah buruh pelabuhan.

Tambahkan pengguna baru bernama 'mohammad' dan tambahkan ke grup buruh pelabuhan.

useradd -m -s /bin/bash mohammad
usermod -a -G docker mohammad

Sekarang login sebagai pengguna 'mohammad' dan jalankan docker container hello-world.

su - mohammad
docker run hello-world

Dan Anda akan mendapatkan hasil seperti gambar di bawah ini.

Langkah 2 - Instal Docker-Compose

Pada langkah ini, kita akan menginstal docker-compose secara manual dari file biner yang dapat diunduh dari GitHub. Kami akan menginstal versi docker-compose terbaru yang akan mendukung compose v3.

Unduh versi 1.22.0 docker-compose terbaru menggunakan perintah curl ke direktori '/usr/local/bin', lalu buat agar dapat dieksekusi menggunakan chmod.

Jalankan perintah di bawah ini.

sudo curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local /bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

Dan versi docker-compose terbaru telah diinstal, periksa dengan menjalankan perintah docker-compose di bawah ini.

versi penulisan buruh pelabuhan

Berikut adalah hasilnya.

Langkah 3 - Siapkan Proyek Nodejs Express

Di bagian ini, kita akan mengkonfigurasi lingkungan aplikasi Nodejs. Kami akan menggunakan aplikasi nodejs sederhana yang dapat dibuat menggunakan 'express-generator'.

Login ke pengguna 'mohammad'.

su - mohammad

Buat direktori baru bernama 'proyek' dan buka direktori tersebut.

mkdir -p proyek
proyek cd

Sekarang buat aplikasi nodejs hello-word sederhana menggunakan perintah 'express' di bawah ini.

aplikasi hakase ekspres

Catatan:

Pastikan paket nodejs, npm, dan 'express-generator' telah diinstal pada sistem.

Dan Anda akan mendapatkan aplikasi nodejs express sederhana di direktori 'hakase-app'.

Selanjutnya, kita akan membuat image buruh pelabuhan khusus untuk aplikasi nodejs 'hakase-app'.

Di bawah direktori 'project', buat 'Dockerfile' baru menggunakan vim.

vim Dockerfile

Tempelkan konfigurasi gambar buruh pelabuhan berikut di sana.

DARI node:8.11.4-alpineRUN mkdir -p /srcRUN npm install express-generator -gWORKDIR /srcADD hakase-app/package.json /src/package.jsonRUN npm installEXPOSE 3000CMD node hakase-app/bin/www 

Simpan dan keluar.

Kami sedang membuat image buruh pelabuhan kustom baru untuk aplikasi nodejs kami dengan spesifikasi di bawah ini.

  • Gambar kustom didasarkan pada gambar nodejs resmi versi 8.11.4 alpine.
  • Kami sedang membuat direktori baru untuk proyek kami '/src'.
  • Pasang 'express-generator' ke gambar khusus.
  • Tambahkan file 'package.json' yang berisi profil aplikasi dan paket yang diperlukan ke direktori '/src'.
  • Instal semua paket nodejs yang diperlukan untuk proyek, berdasarkan file 'package.json'.
  • Ekspor port 3000 dengan perintah start exec default 'node hakase-app/bin/www'.

Selanjutnya, kita akan membuat image kustom berdasarkan skrip docker-compose.

Buat file yml baru 'docker-compose.yml' menggunakan vim.

vim docker-compose.yml

Tempelkan konfigurasi berikut di sana.

versi:'3'services:hakase-app:build:. volume:- ./hakase-app:/src/hakase-app port:- "3000:3000" restart:selalu

Simpan dan keluar.

Kami sedang membuat layanan buruh pelabuhan baru bernama 'hakase-app', dan pada saat yang sama kami membangun gambar buruh pelabuhan kustom berdasarkan 'Dockerfile' pada direktori proyek dan akan me-mount secara otomatis file aplikasi hakase-app.

Penyiapan Nodejs Express telah selesai.

Langkah 4 - Bangun dan Jalankan Proyek

Masuk sebagai pengguna 'mohammad' dan buka direktori 'proyek'

su - mohammad
cd project/

Bangun image dan buat layanan buruh pelabuhan hakase-app menggunakan perintah docker-compose di bawah ini.

pembuatan docker-compose

Sekarang Anda akan mendapatkan hasil seperti gambar di bawah ini.

Dan setelah selesai, jalankan layanan buruh pelabuhan 'hakase-app'.

docker-compose up -d

Berikut adalah hasilnya.

Gambar buruh pelabuhan khusus untuk aplikasi Nodejs kita telah dibuat, dan layanan buruh pelabuhan hakase-app sudah aktif dan berjalan.

Langkah 5 - Pengujian

Tampilkan gambar buruh pelabuhan yang tersedia di server.

gambar komposisi buruh pelabuhan
gambar buruh pelabuhan

Gambar buruh pelabuhan kustom baru untuk aplikasi Nodejs kami telah dibuat.

Tampilkan layanan buruh pelabuhan yang sedang berjalan.

docker-compose ps
docker ps

Aplikasi Nodejs aktif dan berjalan pada port host 3000.

Buka browser web dan ketik alamat IP server dengan port.

http://10.0.15.2:3000/

Dan Anda akan mendapatkan halaman ekspres sederhana.

Aplikasi Dockerizing Nodejs Express di Ubuntu 18.04 telah berhasil diselesaikan.


Ubuntu
  1. Instal PostgreSQL di Ubuntu:Panduan yang Mudah Diikuti

  2. Cara Menginstal Mesin Docker di Ubuntu:Panduan Langkah-demi-Langkah

  3. Cara Menginstal Docker di Ubuntu 16.04

  1. Cara Menginstal Docker di Ubuntu 18.04 / Ubuntu 18.10 / Ubuntu 19.04

  2. Instal qt di Ubuntu 20.04 - Panduan langkah demi langkah?

  3. Instal Aplikasi Pemantauan Suhu Psensor di Ubuntu 20.04 - Panduan langkah demi langkah?

  1. Cara Menginstal Docker Di Ubuntu 18.04

  2. Cara Menginstal Kubernetes di Ubuntu 18.04

  3. Cara Menginstal Docker Compose di Ubuntu 18.04