Dockerfile을 만들어보자

code_able·2023년 3월 11일
0

Dockerfile로
python의 flask라는 restful api app을 구동시키는 이미지를 만들어보자

Dockerfile 생성

아주 간단하다. 시작이 반이다 우리는 벌써 반을 했다.

vi Dockerfile

이미지 설정

아래의 이미지는 debian linux 인것 같다.

FROM python:3.9

리눅스 명령어를 실행하여 패키지를 설치하자

리눅스 명령어를 실행 할 때 RUN을 사용한다.

RUN apt-get update \
        && apt-get install -y curl build-essential \
        && apt-get install -y wget \
        && apt-get install -y git \
        && apt-get install -y gcc \
        && apt-get install -y vim
				&& apt-get install default-jdk -y

한국어를 설정해주자

docker를 사용하면 위대한 한국어가 깨지는 경험을 하기 딱 좋다.

RUN apt-get install -y language-pack-en
RUN locale-gen ko_KR.UTF-8 \
        && LC_ALL=ko_KR.UTF-8  \
        && export LANG='ko_KR.UTF-8'
RUN dpkg-reconfigure locales

디렉토리도 이동해 보자

WORKDIR /app

디렉토리에 flask 소스를 복사한다.

COPY . .

flask app 실행

CMD는 컨테이너 실행시 기본 명령을 정의하는 데 사용되고
ENTRYPOINT는 항상 실행되는 명령을 정의하고, CMD를 인수로 전달합니다.

ENTRYPOINT ["python"]
CMD ["app.py"]

Dockerfile 전체 보기

# os 설정
FROM python:3.7

# 리눅스 실행 명령어 RUN으로 패키지 설치
RUN apt-get update \
        && apt-get install -y curl build-essential \
        && apt-get install -y wget \
        && apt-get install -y git \
        && apt-get install -y gcc \
        && apt-get install -y vim
				&& apt-get install default-jdk -y

# 한국어 설정
RUN apt-get install -y language-pack-en
RUN locale-gen ko_KR.UTF-8 \
        && LC_ALL=ko_KR.UTF-8  \
        && export LANG='ko_KR.UTF-8'
RUN dpkg-reconfigure locales

# 디렉토리 이동
WORKDIR /app

# 디렉토리 내용(소스) 복사
COPY . .

# 컨테이너가 실행될때 명령어
ENTRYPOINT ["python"]
CMD ["app.py"]

Dockerfile로 이미지를 만들기

sudo docker build --tag [image:tag] .
profile
할수 있다! code able

0개의 댓글