uvicorn app.main:app --reload
は、Uvicornを使用してFastAPIアプリケーションを実行するためのコマンドです。ここで、各部分の意味は以下の通りです
-
uvicorn
: Uvicornの実行可能ファイルです。Uvicornは、ASGI (Asynchronous Server Gateway Interface) 仕様をサポートする軽量で高速なASGIサーバーです。FastAPIはASGIを使用するので、非同期Python Webアプリケーションを実行するためにUvicornを使用します。 -
app.main:app
: Uvicornに、アプリケーションをロードするモジュールと変数名を指定しています。ここでは、app.main
はapp
ディレクトリのmain.py
というPythonファイルを指し、app
はそのファイル内でFastAPIのインスタンスとして作成された変数の名前です。 -
--reload
: このオプションを付けると、開発中にソースコードが変更されたときにサーバーが自動的にリロードされます。つまり、コードを編集して保存すると、自動的にアプリケーションが再起動して変更が反映されます。これは開発環境で非常に便利ですが、本番環境で使用するのは推奨されません。
このコマンドを実行すると、Uvicornは指定されたFastAPIアプリケーションをホストし、デフォルトのポートである8000
でリッスンします。ブラウザでhttp://127.0.0.1:8000
にアクセスすることにより、開発中のWebアプリケーションを表示できます。