AI/MLOps

[MLOps] Dockerfile 이미지 만들기

brave_sol 2024. 12. 12. 23:50

1. 내 프로그램을 이미지로 만들고 싶으면?

Dockerfile 생성 > 내용 작성 > 터미널에 docker build

 

1) 이미지 생성

-  docker init 입력하면 자동 완성해줌(필요한것만 수정)

 

# Dockerfile

# 1. 어떤 OS / 프로그램 쓸건지:버전  => Docker hub에서 찾기
FROM node:20-slim

# 2. 어떤 프로그램 설치할건지
##복사하기 싫은 파일은 .dockerignore파일 만들고, 폴더 경로 기재
## 현재 작업 경로 설정 및 설치 파일 복사
WORKDIR /폴더명
COPY 내_컴퓨터_파일경로 이미지_내부_파일_경로
RUN ["npm", "install"]

# 3. 포트 번호 기재
EXPOSE 8080

# 유저 권한 낮추는게 좋음

# 4. 파일 실행 명령어
CMD ["node", "server.js"]

 

2) 이미지 만들기

# 터미널

docker build -t 이미지이름:태그명 .
# .은 현재 경로라는 뜻, 현재 dockerfile경로임

 

3) 이미지 실행

# 터미널

# 이미지 실행
docker run -d 이미지이름:태그명
# -d 안쓰면 터미널 새로 오픈해야함

 

2. Docker build 시간 단축

- COPY랑 RUN 부분 캐싱하기 때문에 잘 안변하는 부분(package.json, 라이브러리)은 위에, 잘 변하는 부분은 밑에 작성

1. package.json 파일 먼저 옮기기
2. npm install 실행
3. 소스 코드 옮기고 실행
반응형