Renderをご存知でしょうか?Renderは、無償プランも存在するNodeやPythonなどのバックエンドサービスをGitHubのリポジトリと直接連携してデプロイすることが可能なPaaSです。本記事では、無料APIサーバーを一緒に構築しながら、このRenderを用いてFast APIアプリをデプロイする手順を詳しく解説していきます。
スポンサーリンク
ソースコードの準備
「main.py」
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
async def root():
return {"message": "Hello World"}
「requirements.txt」
fastapi==0.95.2
uvicorn==0.22
GitHubリポジトリの作成
VSCodeからGitHubのリポジトリを作成します。
ソース管理メニューから「GitHubに公開」を選択。
新規に作成するリポジトリ名を入力。今回は「RenderAPI」というリポジトリ名にしました。リポジトリの公開設定は「Private」にします。
リポジトリに登録するファイルを選択します。__pycache__
はソース管理する必要がないので外します。「OK」をクリックすると、GitHubへ公開されます。
GitHubのページに行って、正常にリポジトリが作成されているか確認します。
Renderアカウントの作成
以下のURLにアクセスして、Renderのアカウントを作ります。
Render
アカウントは、GitHub・GitLab・Googleのアカウントまはたメールアドレスで登録できます。どうせ後からGitHubのリポジトリと連携するので、私はGitHubのアカウントでアカウントを作成しました。
GitHub側で認証します。
メールアドレスを登録します。
上で指定したメールアドレスに認証メールが飛んで来るので、リンクをクリックして認証を完了させます。
ここまでの手順で、Renderの登録は完了です。次は、Fast APIのアプリをRenderにデプロイします。
スポンサーリンク
Fast APIアプリをRenderにデプロイ
Renderのダッシュボードから「New Web Service」をクリックします。
GitHubのリポジトリと連携
GitHubの「Connect account」をクリック
GitHubのページに移動します。ここで、Renderからアクセス可能なリポジトリを設定します。
- 「All repositories」:GitHubアカウントの全リポジトリ
- 「Only select repositories」:選択したリポジトリのみ
今回は「Only select repositories」を選択し、「Render API」のリポジトリのみアクセス許可を設定します。
下の方までスクロールして「Install」をクリック
許可したリポジトリが一覧に表示されます。「Render API」の「Connect」をクリックします。
デプロイの設定
デプロイの設定を行います。まず、Name
に適当なアプリ名を入力します。
スタートアップコマンドに、次のコマンドを設定。また、料金プランは「Free」を選択します。
uvicorn main:app --host 0.0.0.0 --port 10000
最後に、下の方までスクロールして「Create Web Service」をクリックしてデプロイを開始します。
動作確認
デプロイが完了すると、ダッシュボードの以下の部分にアプリのURLが表示されます。
ブラウザでアクセスして、動作確認してみましょう。
うん、正常に Hello WorldのJSONが返されていますね!
まとめ
Python+Fast APIのアプリを、Renderにデプロイする手順を紹介しまいた。Freeプランでも、個人用または小さなコミュニティー程度であれば十分に使えます。
0 件のコメント:
コメントを投稿