ホームページ > バックエンド開発 > Python チュートリアル > Docker ハンズオン: サンプル Flask プロジェクトで Dockerfile、コンテナ、ポート フォワーディングを学びます

Docker ハンズオン: サンプル Flask プロジェクトで Dockerfile、コンテナ、ポート フォワーディングを学びます

Susan Sarandon
リリース: 2025-01-14 07:36:44
オリジナル
383 人が閲覧しました

このチュートリアルでは、Docker を使用した単純な Flask アプリケーションの構築とデプロイについて説明します。 Dockerfile の作成、イメージの構築、コンテナーの実行、さらにはイメージの Docker Hub へのプッシュについても説明します。 Docker の基礎に詳しくない方は、以前の投稿をご覧ください:

実際の例から始めましょう:

プロジェクトのセットアップ:

  1. 「flask-app」という名前のディレクトリを作成します。
  2. 「flask-app」内に、次の単純な Flask アプリケーションを含む 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>
ログイン後にコピー
  1. 同じく「flask-app」で、次の内容の 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>
ログイン後にコピー
  1. 最後に、「flask-app」ディレクトリに requirements.txt を作成します。
<code>Flask==2.3.2</code>
ログイン後にコピー

ディレクトリ構造は次のようになります:

<code>flask-app/
├── Dockerfile
├── index.py
└── requirements.txt</code>
ログイン後にコピー

Docker イメージの構築と実行:

  1. ターミナルの「flask-app」ディレクトリに移動します。
  2. 次のコマンドを使用して Docker イメージをビルドします:
<code class="language-bash">docker build -t flask-app .</code>
ログイン後にコピー
  1. イメージが正常に構築されたことを確認します:
<code class="language-bash">docker images</code>
ログイン後にコピー
  1. Docker コンテナを実行し、ホスト マシンのポート 5000 をコンテナのポート 5000 にマッピングします。
<code class="language-bash">docker run --name my-flask-app -d -p 5000:5000 flask-app</code>
ログイン後にコピー
  1. 実行中のコンテナを確認します:
<code class="language-bash">docker ps -a</code>
ログイン後にコピー
  1. ブラウザで http://127.0.0.1:5000 にアクセスするか、curl:
  2. を使用してアプリケーションをテストします。
<code class="language-bash">curl http://127.0.0.1:5000</code>
ログイン後にコピー
  1. コンテナを停止して削除するには:
<code class="language-bash">docker container rm -f my-flask-app</code>
ログイン後にコピー
  1. 画像を削除するには:
<code class="language-bash">docker image rm -f flask-app</code>
ログイン後にコピー

Docker Hub へのプッシュ:

Docker Hub にプッシュする前に、アカウントをまだお持ちでない場合は作成してください。 次に:

  1. Docker Hub のイメージにタグを付けます (omerbsezer を Docker Hub のユーザー名に置き換えます):
<code class="language-bash">docker tag flask-app omerbsezer/dev-to-flask-app:latest</code>
ログイン後にコピー
  1. 画像をプッシュします:
<code class="language-bash">docker push omerbsezer/dev-to-flask-app:latest</code>
ログイン後にコピー

これで、Docker Hub でイメージを確認できるようになります。 スクリーンショットがここに配置されます。

Docker Hands-on: Learn Dockerfile, Container, Port Forwarding with Sample Flask Project

結論:

この実践的な例は、Docker を使用して単純な Python アプリケーションをコンテナ化するための完全なワークフローを示しています。 その他の Docker チュートリアル、AWS、Kubernetes、Linux、DevOps、Ansible、Machine Learning、Generative AI、SAAS コンテンツについては、次のリンクをクリックしてください:

以上がDocker ハンズオン: サンプル Flask プロジェクトで Dockerfile、コンテナ、ポート フォワーディングを学びますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート