능글맞은 구렁이
Docker - Simple Project(express, image생성) 본문
아주아주 심플한 도커프로젝트를 만들어서
이미지생성, 도커 실행, 도커 중지등 기능 실행을 해보겠다.
1. 기본 셋팅
- docker desktop을 실행
- 폴더 생성
2. npm 명령어 입력
npm init -y 를 실행시켜 프로젝트를 초기화 시킨뒤
npm i express 를 실행시켜
express프레임워크를 사용하여 심플한 백엔드를 만들어준다.
3. index.js 작성.
const express = require('express');
const app = express();
app.get('/', (req, res)=>{
res.send('<h2>🐋Hello World!🐋</h2>');
});
app.listen(3000, ()=> console.log('Server is running'));
- index.js를 작성했다면 node index.js를 실행해보자
그럼 아래와같이 localhost:3000을 입력하였을때
🐋Hello World!🐋가 출력된것을 알수있다.
4. Dockerfile 파일 생성
- 이제 도커 이미지를 생성하고 실행하기 위해 dockerfile을 생성하여 아래의 소스를 입력한다.
#NODE버전
FROM node:16-alpine
#컨테이너 안에서 어떤경로의 프로젝트를 COPY해올지 명지
#linux의 CD와 같은 명령어
WORKDIR /app
#copy할 대상
COPY package.json package-lock.json ./
#npm 실행!
#npm install도 가능하지만 ci를 사용한다면 버전까지 동일하게 다운받아준다.
RUN npm ci
COPY index.js .
ENTRYPOINT [ "node", "index.js" ]
5. 터미널에서 빌드실행
- docker build . 입력한다.
그럼 위와같이 명령어들이 실행된다.
6.이미지 확인
docker images 라고 명령어를 실행하면 위와 같이 이미지가 생성된걸 알수 있다.
7. 도커 실행
docker run -p 3000:3000 b55cac6064a9
docker images명령에서 나온 Image Id를 가지고 위와같이 명령어를 실행시켜주면 완료
docker desktop에서도 확인이 가능하다.
8. 도커 중지
정지를 하기위해선 docker desktop을 이용해도 좋다.
하지만 터미널을 이용하고 싶다면
- 새 터미널을 실행
- docker ps
- docker stop elastic_brahmagupta
9. 이미지의 이름을 생성하고 싶을때
- 빌드 : docker -build -t simple-docker
- 실행 :docker run -d -p 3000:3000 simple-docker
'DevOps > Docker' 카테고리의 다른 글
Docker - image push (1) | 2024.02.06 |
---|---|
Docker - 이미지삭제, 컨테이너 삭제 (0) | 2024.01.16 |
Docker - 인터렉티브 모드 (0) | 2024.01.16 |
Docker - 연결모드(attached), 분리모드(detached) (0) | 2024.01.16 |
Docker란? (2) | 2023.12.21 |
Comments