본문 바로가기
Development Frameworks/클라우드 컴퓨팅(Cloud Computing)

[Docker] 🐳 Flask와 함께하는 Docker 여행: Python 3.9 앱 Dockerize하기

by 데이터 벌집 2023. 11. 4.

Flask는 Python으로 작성된 경량화된 웹 프레임워크로 인기를 얻고 있습니다. 오늘은 Python 3.9을 사용하여 간단한 Flask 앱을 Dockerize하는 과정을 살펴보겠습니다. 🚀

 

 

Dockerfile, Image, Container, 출처: Docker

📝 필요한 파일 및 디렉토리 구조:

  1. app.py: Flask 앱의 주 코드 파일
  2. requirements.txt: Flask 및 관련 패키지의 의존성 목록
  3. Dockerfile: Docker 이미지를 만들기 위한 명령어와 설정

 

📄 app.py

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello, Docker!'

if __name__ == '__main__':
    app.run(debug=True, host='0.0.0.0')

 

🛠️ requirements.txt

flask==2.0.1

 

 

🔧 Dockerfile

 

# Python 3.9 기반 이미지 사용
FROM python:3.9-slim

# 작업 디렉토리 설정
WORKDIR /app

# 의존성 파일들을 컨테이너에 복사
COPY requirements.txt .

# 의존성 설치
RUN pip install --no-cache-dir -r requirements.txt

# Flask 앱 코드를 컨테이너에 복사
COPY . .

# Flask가 사용할 포트 설정
EXPOSE 5001

# 앱 실행 명령어 설정
CMD ["python", "app.py"]

 

🚀 Dockerize 과정

  1. Dockerfile 및 필요한 파일들이 있는 디렉토리로 이동
  2. Docker 이미지 빌드: docker build -t my-flask-app .
  3. Docker 컨테이너 실행: docker run -p 5001:5000 my-flask-app

이제 웹 브라우저를 열고 http://localhost:5001에 접속하면 "Hello, Docker!" 메시지를 확인할 수 있습니다. 🎉

 

Hellow Docker!

 

Docker는 Flask 앱을 효과적으로 배포하고 관리하는 데 유용한 도구입니다. 이제 여러분도 Docker를 활용하여 간단한 Flask 앱을 더욱 안정적으로 운영할 수 있습니다. 다음 번에는 Docker Compose를 사용하여 여러 서비스와 함께 Flask 앱을 배포하는 방법에 대해 알아보겠습니다.