본문 바로가기
일상

간단히 react 프로젝트를 Docker로 이미지화

by 일상노미 2023. 3. 21.

프런트 앤드와 백앤드를 동시에 하면서

Docker에 대해 공부하게 되어 다음에 프런트 프로젝트에 사용하기 위해 정리해요

 

프런트 앤드만 하다가 백앤드까지 하려고 하니

무지가 너무 많이 발목을 잡아 힘드네요~

 

 

그래서 한 가지 한 가지씩 작업할 때마다 정리하려고 해요

 

내가 하는 게 정답이 아니고 아직 배우고 공부하는 중이라 한번 정리로 끝내지 않을 예정이다.

 

Docker 정리하기

1. Docker 설치하기
    OS에 맞게 Docker를 아래 사이트에서 다운로드하여 설치

    https://www.docker.com/

 

Docker: Accelerated, Containerized Application Development

Docker is a platform designed to help developers build, share, and run modern applications. We handle the tedious setup, so you can focus on the code.

www.docker.com

 

2. react 프로젝트 root 폴더에 Dockerfile 파일 제작

  root 폴더에 Docker 만들어서 아래 내용 붙여 넣기

FROM node:16

# 앱 디렉터리 생성
WORKDIR /app

# 앱 의존성 설치
# 가능한 경우(npm@5+) package.json과 package-lock.json을 모두 복사하기 위해
# 와일드카드를 사용
COPY package*.json ./

RUN yarn install
# 프로덕션을 위한 코드를 빌드하는 경우
# RUN npm ci --only=production

# 앱 소스 추가
COPY . .

RUN yarn build

CMD ["yarn", "start"]

# docker run --restart always -p 3002:3002 -d inome/test01 <- 재부팅시 실행
# docker ps 실행중인 도커 확인
# docker images 이미지 목록

 

3. react root폴더에 .dockerignore 파일 제작

  도커로 이미지를 화 할 경우 불필요한 파일을 이미지화에서 제거하기 위해 설정

.git
.gitignore
node_modules
build
Dockerfile
README.md

 

4. 이미지 제작

  작업이 완료된 후 도커 명령어를 이용해 이미지 제작

  - docker build . -t 프로젝트명

  예시) docker build . -t inome/test01_v3

  프로젝트명을 설정하여 위 명령어를 실행하면 이미지가 생성됨.

 

 

 

5. 이미지 제작 확인

  docker images
  위 명령어로 생성된 이미지 확인 가능

   REPOSITORY                 TAG       IMAGE ID            CREATED        SIZE

   inome/node-web-app   latest    2636cf378f30   13 days ago    867MB

  위와 같은 정보가 노출됩니다.

 

6. 생성된 이미지 중 사용할 컨테이너 실행

  docker run -p 포트:포트 -d 프로젝트명

  예시) docker run -p 3002:3002 -d inome/test01_v3

  위 명령어로 컨테이너를 실행하면 서버를 실행한 것처럼 계속 돌아가는 것을 확인할 수 있다.

 

7. 컨테이너 실행 확인

  docker ps

  명령어를 통해 현재 구동되고 있는 컨테이너 확인 가능

  CONTAINER ID     IMAGE                    COMMAND                       CREATED       STATUS             PORTS                

  NAMES

  6edb4e171d5b     inome/test01_v1   "docker-entrypoint.s…"   12 days ago   Up 3 seconds   0.0.0.0:3002->3002/tcp  

  epic_sinoussi

  실행된 컨테이너 확인 가능

  

컨테이너가 실행된 이후

  프로젝트를 수정하여 새로 이미지를 말았을 경우 기존의 컨테이너를 멈추고 새로운 컨테이너로 실행

  프로그램을 설치하였을 경우 ui로 실행 및 정지 삭제 등 기능을 편하게 수행 가능합니다.

 

자주 사용하는 명령어

  컨테이너 정지 : docker start <컨테이너 ID>  :  docker start 6edb4e171d5b

  컨테이너 시작 : docker stop <컨테이너 ID>  :  docker stop 6edb4e171d5b

 

 

여기까지 간단히 Docker 이미지 및 컨테이너 실행 방법입니다.

'일상' 카테고리의 다른 글

속독법 원리와 방법 알아보기  (0) 2023.04.12
책읽는 방법에 대해  (0) 2023.04.12
AWS에 nginx 설치하기  (0) 2023.03.20
별보러 강원도 캠핑장으로  (0) 2023.03.20
요즘 관심이 가는 밀리의 서재  (0) 2023.03.17