2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめてPoetryを使ってみた(例:FastAPI-Project)

Posted at

Poetryの設定手順(例:FastAPI-Project)

私の記事は、この記事に限らず全て...
備忘録的に書き連ねているだけなので、ご承知ください。

インストール

curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python -

初期設定

# 新しいプロジェクトを作成する際に自動的に仮想環境が作成される
poetry config virtualenvs.create true
# 各プロジェクトルートの .venv ディレクトリ内に仮想環境が作成される
poetry config virtualenvs.in-project true

新規プロジェクトを作成

poetry new <project-name>
# 例
# poetry new fastapi-project
cd fastapi-project

仮想環境のアクティベート

poetry shell 

# アップグレードされるパッケージ一覧が分かる
poetry update --dry-run
# アップグレード
poetry update

注)

  • poetry update は、poetry.lock ファイルを更新する
  • poetry installは、pyproject.toml と poetry.lock ファイルに基づいて依存関係をインストールする

FastAPIとUvicornの依存関係の追加

poetry add fastapi uvicorn

プロジェクトルートにmain.pyを作成

touch main.py
  • main.py はアプリケーションのエントリポイント
  • FastAPIアプリケーションのルートとなるファイル
  • APIのルート、エンドポイント、ビジネスロジックなどを記述する

main.py

from fastapi import FastAPI

app = FastAPI()

@app.get("/")
async def read_root():
    return {"Hello": "World"}

注)

  • 大規模なアプリケーションの場合、main.py は複数のモジュールやパッケージに分割されることがある
  • 小さなプロジェクトやプロトタイプの場合は、main.py に基本的なコードを記述するだけで十分

アプリケーションの実行

uvicorn main:app --reload
# --reload オプションは開発中のコード変更を自動的にリロードするためのもの

参照:

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?