🚀
FlaskとDockerのさわりだけやってみた
🌟 はじめに
おぐまです。
Pythonの軽量WebフレームワークであるFlaskで公式Quickスタート[1]の初めのWebアプリケーション開発の部分と、Dockerを使ってコンテナ化してみました。将来的にはより複雑なアプリケーションの開発やデプロイメントに活かしていきます!
👷♂️ 事前準備
- 必要なツールやライブラリ: Python、Flask、Docker
- 基本的な知識要件やスキルセット: Pythonプログラミング、基本的なWeb開発の理解、コンテナの基礎知識
💻 開発環境
- Python 3.9
- Flask 2.0.1
- Docker 20.10.7
📝 やったこと
👉 Flaskアプリの初期構築
まず、シンプルなFlaskアプリを作成してみます。
- プロジェクトディレクトリの準備:
python3 -m venv quick_flask
cd quick_flask
source bin/activate
- Flaskのインストール:
pip install Flask
-
アプリケーションのコード:
app.py
ファイルを作成し、以下のコードを記述します。
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello_world():
return "<p>Hello, World!</p>"
- アプリケーションの実行:
flask run
ブラウザを開いて http://127.0.0.1:5000/
にアクセスし、"Hello, World!" が表示されることを確認します。
👉 Dockerを使ったアプリのコンテナ化
次に、作成したFlaskアプリをDockerコンテナ内で実行します。
-
Dockerfileの作成:
プロジェクトルート(今回はquick_flaskディレクトリ直下)にDockerfile
を作成し、以下の内容を記述します。
FROM python:3.9-slim
WORKDIR /app
COPY . /app
RUN pip install Flask
EXPOSE 5000
CMD ["flask", "run", "--host=0.0.0.0"]
- Dockerイメージのビルド:
docker build -t quick_flask .
- Dockerコンテナの実行:
docker run -p 5000:5000 quick_flask
再びブラウザで http://127.0.0.1:5000/
にアクセスし、コンテナ内でアプリが実行されていることを確認します。
🎉 まとめ
Flaskを使った簡単なWebアプリケーションの開発から始め、Dockerを使用してそのアプリケーションをコンテナ化やってみました。
めちゃくちゃ簡単、、とおもったら1つ躓きましたがそれぞれドキュメント読み始めて20分くらいでできました!
FlaskもDockerもなんとなく理解したので応用でなんか作ってみたいと思います。
💡 補足
- 関連資料やさらなる情報が必要な場合は、以下を参照してください
Discussion