Docker 이미지 빌드

overFlowoong·2024년 10월 28일

MLOps

목록 보기
3/4
post-thumbnail

1. Dockerfile

docker image 빌드를 위해서 우선 Dockerfile을 작성해야함

주요 명령어)

# Dockerfile

FROM <이미지> 혹은 <이미지>:<태그>    # base image 로 사용할 image 이름과 태그

ENV <환경변수명> <환경변수값> 혹은 <환경변수명>=<환경변수값>    # 환경변수 설정

WORKDIR <작업경로>    # 작업 경로 전환

COPY <복사하고자 하는 파일 혹은 디렉토리> <붙여넣을 경로>    # 디렉토리나 파일 복사

ARG <입력 파라미터 이름> 혹은 <입력 파라미터 이름>=<디폴트 값>    # docker build 할 때 --build-arg 를 통해 파라미터 전달

RUN <실행하고자 하는 커맨드> 혹은 ["<메인커맨드>", "<파라미터>", "<파라미터>",...]    # 커맨드 실행

CMD <실행하고자 하는 커맨드> 혹은 ["<메인커맨드>", "<파라미터>", "<파라미터>",...]    # 컨테이너를 띄울 때 기본으로 실행할 커맨드 실행

ENTRYPOINT <실행하고자 하는 커맨드> 혹은 ["<메인커맨드>", "<파라미터>", "<파라미터>",...]    # 컨테이너에서 항상 실행 되어야 하는 커맨드 실행

EXPOSE <포트> 혹은 <포트>/<프로토콜>    # 해당 포트/프로토콜 를 리스닝 상태로 만들어줌

예시)

# Dockerfile

FROM python:3.8

ENV bind 127.0.0.1:5000

WORKDIR /var

COPY requirement.txt ./

RUN apt update -y && pip install -r requirement.txt

CMD ["python", "./app.py"]



2. 이미지 빌드

빌드할 Dockerfile 을 작성했으면 해당 Dockerfile이 있는 경로에서 다음 명령어를 실행하여 빌드 할 수 있음

docker build -t <이미지>:<태그> .    # 태그 미지정 시 latest로 자동지정됨

** -t // —tag 옵션을 통해 이미지 태그를 지정하기



빌드한 이미지는 다음 명령어로 확인할 수 있음
$ docker images



만약 빌드한 이미지를 허브에 올리고 싶다면

먼저 이미지 태그

# docker 레지스트리명 = regname
# 이미지 명:태그명 = testimage:1.0
$ docker tag testimage:1.0 regname/testimage:1.0

이미지 업로드

$ docker push regname/testimage:1.0

docker-compose 를 사용해서도 이미지를 빌드 할 수 있는데 이 방법은 다음에 포스팅 예정^^

profile
나도 할래 기술 블로그!

0개의 댓글