Docker로 Flask 앱을 띄우려면 아래의 설정이 필요하다.
<app.py>
app.run(host='0.0.0.0', port=5000)
- dockerfile은 docker image의 설계도와 같다.
1. dockerfile 구성
2. 내 파이썬 디렉토리에 Dockerfile 만들기(확장자 없음)
docker build -t flask-app .
docker run -d -p 5000:5000 flask-app
👉 아래 명령어 입력
☁ docker docker build -t flask-app .
👉 아래와 같이 실행된다.
...
=> [2/5] COPY . /app 0.1s
=> [3/5] WORKDIR /app 0.0s
=> [4/5] RUN pip3 install flask 5.2s
=> [5/5] RUN chmod +x /app/app.py
...
👉 확인해 보면 다음과 같이 image가 잘 생성 되었다.
☁ docker docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
flask-app latest 0bf635958d7e About a minute ago 55MB
👉 아직 아무것도 없다.
☁ docker docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
👉 아래와 같이 명령어를 입력해서 container를 실행한다.
☁ docker docker run -p 5000:5000 flask-app
👉 만약 "app.py"에 수정된 사항이 있다면 다시 build를 실행한다.
☁ docker docker build -t flask-app .
👉 이번에는 -d 옵션을 주어서 터미널이 닫혀도 실행되도록 한다.
docker run -d -p 5000:5000 flask-app
👉 아래와 같이 이름을 달리해서 여러개를 띄울 수도 있다. 아래와 같이 하면 image명이 바뀐다.
☁ docker docker run -d -p 5000:5000 flask-app:v2