이 튜토리얼에서는 Docker를 사용하여 간단한 Flask 애플리케이션을 구축하고 배포하는 방법을 보여줍니다. Dockerfile 생성, 이미지 빌드, 컨테이너 실행, Docker Hub에 이미지 푸시까지 다룹니다. Docker 기본 사항에 익숙하지 않은 경우 다음 이전 게시물을 확인하세요.
실습 예제로 시작해 보겠습니다.
프로젝트 설정:
index.py
을 만듭니다.<code class="language-python"># index.py from flask import Flask app = Flask(__name__) @app.route("/") def hello(): return "Hello World!" if __name__ == "__main__": app.run(host="0.0.0.0", port=int("5000"), debug=True)</code>
Dockerfile
(확장자 없음)을 만듭니다.<code class="language-dockerfile">FROM python:3.13.1-alpine3.21 WORKDIR /app COPY . /app RUN pip install -r requirements.txt EXPOSE 5000 CMD ["python", "index.py"]</code>
requirements.txt
을 만듭니다.<code>Flask==2.3.2</code>
이제 디렉토리 구조는 다음과 같습니다.
<code>flask-app/ ├── Dockerfile ├── index.py └── requirements.txt</code>
Docker 이미지 빌드 및 실행:
<code class="language-bash">docker build -t flask-app .</code>
<code class="language-bash">docker images</code>
<code class="language-bash">docker run --name my-flask-app -d -p 5000:5000 flask-app</code>
<code class="language-bash">docker ps -a</code>
http://127.0.0.1:5000
에 액세스하거나 curl
:<code class="language-bash">curl http://127.0.0.1:5000</code>
<code class="language-bash">docker container rm -f my-flask-app</code>
<code class="language-bash">docker image rm -f flask-app</code>
Docker Hub로 푸시:
Docker Hub에 푸시하기 전에 아직 계정이 없다면 계정을 만드세요. 그런 다음:
omerbsezer
를 Docker Hub 사용자 이름으로 교체).<code class="language-bash">docker tag flask-app omerbsezer/dev-to-flask-app:latest</code>
<code class="language-bash">docker push omerbsezer/dev-to-flask-app:latest</code>
그런 다음 Docker Hub에서 이미지를 볼 수 있습니다. 여기에 스크린샷이 배치됩니다.
결론:
이 실제 예는 Docker를 사용하여 간단한 Python 애플리케이션을 컨테이너화하기 위한 완전한 워크플로를 보여줍니다. 더 많은 Docker 튜토리얼, AWS, Kubernetes, Linux, DevOps, Ansible, Machine Learning, Generative AI 및 SAAS 콘텐츠를 보려면 다음 링크를 따르세요.
위 내용은 Docker 실습: 샘플 Flask 프로젝트를 통해 Dockerfile, 컨테이너, 포트 전달 알아보기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!