Dockerfile로
python의 flask라는 restful api app을 구동시키는 이미지를 만들어보자
아주 간단하다. 시작이 반이다 우리는 벌써 반을 했다.
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
COPY . .
CMD는 컨테이너 실행시 기본 명령을 정의하는 데 사용되고
ENTRYPOINT는 항상 실행되는 명령을 정의하고, CMD를 인수로 전달합니다.
ENTRYPOINT ["python"]
CMD ["app.py"]
# 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"]
sudo docker build --tag [image:tag] .