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アプリケーションを表示できます。