🔗 레시피 만들고 실행하는 방법
✏️ 소스 파일 생성
📍 디렉토리, 파일 생성
mkdir -p /docker_projects/node_hello_1/project
cd /docker_projects/node_hello_1/project
vim index.js
const express = require("express");
const port = "8080";
const app = express();
app.get("/", (req, res) => {
res.send("Hello Node");
});
app.listen(port);
console.log(`server running on ${port}`);
- 의존성 파일 생성
- Spring boot 의 build.gradle 같은 역할을 하는 파일
vim package.json
{
"dependencies": {
"express": "^4.18.2"
}
}
✏️ Docker file 생성
📍 레시피 생성
vim Dockerfile
FROM node
WORKDIR /usr/src/app
COPY ./ ./
RUN npm install
EXPOSE 8080
CMD ["node", "index.js"]
✏️ 도커 이미지 생성
docker build -t node_hello_1 .
docker images
✏️ 이미지 실행
docker run \
--name=node_1 \
-p 8080:8080 \
--rm \
-d \
node_hello_1
- 포트를 80 이 아닌 8080 으로 설정했기 때문에 브라우저로 확인할 땐 뒤에 8080 포트를 명시해주어야 한다. 🔗 DNS 서버 수정하기