반응형
[Flask app 은 기본적으로 작성되어있다고 가정.]
1. Docker 설치
- window : https://docs.docker.com/desktop/install/windows-install/
- mac : https://docs.docker.com/desktop/install/mac-install/
- linux : https://docs.docker.com/desktop/install/linux-install/
2. Docker Desktop (window, mac) / Docker service (linux) 시작
3. pip freeze 통해 필요한 모듈들 뽑아내기
pip freeze > requirements.txt
위 명령 결과로 requirements.txt 라는 파일이 생성된다.
4. Dockerfile 작성
## ./Dockerfile
# 기본 이미지 설정
FROM python:3.11.4
# 작업 디렉토리 설정
WORKDIR /flaskr
# 애플리케이션 소스 코드를 현재 디렉토리로 복사
COPY . /flaskr
# install python dependencies
RUN pip install --upgrade pip
RUN pip install --no-cache-dir -r requirements.txt
# 애플리케이션 실행 명령
CMD ["python", "app.py"]
* 작업 디렉토리는 본인에 맞는 경로 사용.
* 맨 마지막에 들어갈 app.py 에는 flask app 실행시키는 명령 필요
예제)
더보기
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return "Hello, Docker!"
if __name__ == "__main__":
app.run(host='0.0.0.0', port=5000)
5. Docker 이미지 build
docker build -t flask-app:latest .
...
6. Docker 이미지 실행
docker run -p 5000:5000 flask-app:latest
이렇게 하면, docker image를 통해 flask app 구동이 가능하다!
반응형
'일상 > 삽질' 카테고리의 다른 글
스팀 장바구니에 하나 또는 그 이상의 아이템에 대한 다른 보류 중인... (4) | 2024.01.02 |
---|---|
[VSCode] 각종 Formatter 적용 안 될 때 (prettier... ) (0) | 2023.09.14 |
[VSCode] flask html에서 한글 사용 시 UnicodeDecodeError (0) | 2023.07.25 |