Node.js 기반 Docker Image 만들기 - 1 (이 글)

Node.js 기반 Docker Image 만들기 - 2

Node.js 기반 Docker Image 만들기 - 3

 

 

https://nodejs.org/ko/docs/guides/nodejs-docker-webapp/

 

Node.js 웹 앱의 도커라이징 | Node.js

Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.

nodejs.org

 

원하는 이름으로 폴더 생성 후 생성된 폴더로 이동해요

npm init -y 명령어 실행 후 ls 명령어를 통해 package.json 파일 확인

mkdir dockerizing
cd dockerizing
npm init -y
ls

package.json

 

npm i express

 

npm i express 명령어를 통해 express 설치 후

cat 명령어를 통해 package.json 내용 확인 후 scripts의 내용 삭제 "start": "node index.js" 추가

{
  "name": "dockerizing",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "start": "node index.js"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "dependencies": {
    "express": "^4.17.1"
  }
}

 

index.js 파일 생성 후 아래 내용 추가

'use strict';

const os = require('os');
const express = require('express');

// 상수
const PORT = 8080;
const HOST = '0.0.0.0';

// 앱
const app = express();
app.get('/', (req, res) => {
  res.send(`Your app is running on Host : ${os.hostname()}\r\n`);
});

app.listen(PORT, HOST);
console.log(`Running on http://${HOST}:${PORT}`);

\r\n은 curl 명령어로 확인했을 때 줄바꿈 안 되는게 보기 싫어서 넣었어요

 

package.json에 scripts에 start : node index.js를 넣어놓았으니까

아래 명령어를 통해 index.js 실행해요

npm start

 

브라우저에서 http://localhost:8080 확인 혹은 또 다른 터미널에서 curl localhost:8080 실행

dev-01이 linux의 host name입니다

 

Node.js 기반 Docker Image 만들기 - 2 (tistory.com)에서 계속