チャチャっとクイック、FastAPI
概要
とりあえず、FastAPIでチャチャっと何か作るときに素早く立ち上げたい。
そんなときに、多分便利なshellスクリプトと手順をまとめたものです。
感想
イメージのビルドとかに時間は多少かかるものの、全て揃っていればとりあえず2分未満でDoker上で動くまでは行くはず。(個人環境でテスト)
開発環境
- macOS Sequoia 15.5
- VsCode
- zsh 5.9 (arm64-apple-darwin24.0)
前提条件
システムに以下がインストールされていることを確認してください:
- Python 3.12
- uv pip (インストールはこちら)
Docker上で起動するには:
- Dcoker (インストールはこちら)
使い方
このリポジトリをクローンするか、シェルスクリプトをダウンロードする
git clone https://github.com/testkun08080/FastAPI-QuickSetup.git
cd FastAPI-QuickSetup
または以下スクリプトを直接ダウンロードしてください:
[!NOTE]
ファイルをダウンロードするには、リンクを右クリックして「名前を付けてリンク先を保存」などのオプションを選択してください。
quickFastAPI.sh をダウンロード
setupDocker.sh をダウンロード
うまくいかない場合や直接レポをみたい方はこちらを。
ローカルに環境を構築
-
スクリプトを実行して、ローカル環境に FastAPI プロジェクトをセットアップします:
./quickFastAPI.sh
-
ターミナルでプロジェクト名を入力するように求められます:
Setting up a FastAPI project... Enter the project name: <PROJECT_NAME>
-
FastAPI サーバーをすぐに起動するかどうか尋ねられます:
Would you like to start the FastAPI server now? (y/n):
-
後で手動でサーバーを起動するには、以下のコマンドを使用します:
cd <PROJECT_NAME> ./run.sh
-
起動したら、以下の URL をブラウザで開いてアクセスします:
http://127.0.0.1:8000/以下のように自分の設定したプロジェクトの名前が、きちんと表示されているばおk!
環境変数(.env)へプロジェクト名が書かれているはずです。
Docker でアプリケーションをビルド・実行
- Docker セットアップスクリプトに実行権限を付与し、実行:
chmod +x setupDocker.sh ./setupDocker.sh
- プロンプトが表示されたら、Docker ビルドに使用するディレクトリを番号で選択:
Select a directory from the list below: 1) <PROJECT_NAME>/
- セットアップが正常に完了すると、次のようなメッセージが表示されます:こちらにアクセスできるはずです。(できない場合は他に同じポートが使われていないか確認してください。)
Docker setup complete! Your FastAPI application is now running at: http://localhost:8000
http://localhost:8000
最後に
UVを含んだイメージをDocker上でやるのと小さなpythonイメージを使うのはどちらがいいのか。
サイズで的には、pythonXXX-slimとかが良さそうだけど。
P.S. これが誰かに役立つことを願って、、、
もっと高速でFastAPIの環境揃えられるというやり方あれば教えてください!
Discussion