![見出し画像](https://assets.st-note.com/production/uploads/images/102027319/rectangle_large_type_2_b41e2896f59d9b93bd68a3b46e012581.png?width=1200)
補足:Pythonによるブロックチェーン開発教本
この記事は、以下の書籍(私が制作したもの)の補足内容です。読者からの声に基づき、書籍内容の修正点や補足を記載します。
本番環境へのデプロイについて
以下の章に関わる内容です。
0-4 事前準備 FastAPIのインストールとDetaアカウントの作成
1-7 本番環境へのデプロイ
2-4 本番環境へのデプロイ
3-7 本番環境へのデプロイ
本書での本番環境でのデプロイで利用していた無料のクラウドサービスDeta Cloudが、Deta Spaceへと仕様変更されました。2023/2/14、バレンタインデーの日にアナウンスされています。
これに伴って、本番デプロイに使用するサービスとして、Render(https://render.com/)を紹介します。もちろん別のサービスを利用してもまいません。以下にRenderを利用したデプロイ手順を記載します。
書籍内で、Detaにデプロイしている部分を、Renderにデプロイする形に読み替えて、読み進めていただければ幸いです。
1 デプロイするファイルの準備
今回はサンプルファイルとして以下2ファイルを利用します。
ファイル名:main.py
from fastapi import FastAPI
app = FastAPI()
# "/"にGETメソッドでリクエストした際の処理を定義
@app.get("/")
def index():
return {"Hello": "World"}
# "/items/{item_id}"にGETメソッドでリクエストした際の処理を定義
@app.get("/items/{item_id}")
def read_item(item_id: int):
return {"item_id": item_id}
ファイル名:requirement.txt
😲😲😲重要ポイント😲😲😲
書籍に記載の状態から、uvicorn==0.13を追記しています。
fastapi==0.70.0
uvicorn==0.13
2 GitHubアカウント作成
まずは、GitHubのアカウントを作成してください。
3 GitHubへのソースコードのアップロード
次にGitHubへのソースコードのアップロードします。ログイン後https://github.com/newへアクセスします。
下記画像のように、Repository nameに好きな名前を入力します。Add a README fileにチェックします。その後、Create repositoryをクリックします。
![](https://assets.st-note.com/img/1676817296988-1VZPk7rpYL.png)
Add fileのUpload filesをクリックします。
![](https://assets.st-note.com/img/1676817599141-VarcQShrC2.png?width=1200)
オレンジのエリアにmain.pyとrequirement.txtをドラッグアンドドロップし、Commit changesをクリックします。
![](https://assets.st-note.com/img/1676817682690-tN9scL4wDp.png?width=1200)
4 Renderアカウントの作成
Renderのアカウントを作成します。
5 RenderとGitHubの連携とデプロイ
ログイン後、Newをクリックし、Web Serviceをクリックします。
![](https://assets.st-note.com/img/1676820769829-pru4O8723O.png?width=1200)
Connect GitHubをクリックし、作成したGitHubのアカウントと連携します。
![](https://assets.st-note.com/img/1676820026154-zkXieIcuJ7.png?width=1200)
All repositriesを選択し、Saveをクリックします。
![](https://assets.st-note.com/img/1676820411823-ZH4VuBYWb0.png)
デプロイしたいRepositoryのConnectをクリックします。
![](https://assets.st-note.com/img/1676820074467-rpQuIaH6Hj.png?width=1200)
Nameに好きな名前を入力します。Regionは想定される利用者に近いエリアを選択します。
![](https://assets.st-note.com/img/1676824267136-HfREOmmwRu.png?width=1200)
Start Commandにuvicorn main:app --host 0.0.0.0 --port 10000を入力し、価格はFreeを選択し、Create Web Serviceをクリックします。
![](https://assets.st-note.com/img/1676820099125-ryOjUkAxad.png?width=1200)
In Progress→Liveになったらデプロイ完了です。左上のURLからアプリケーションにアクセスできます。
![](https://assets.st-note.com/img/1676822897281-Dn9WbGnDg8.png?width=1200)
アクセスした画面
![](https://assets.st-note.com/img/1676825929608-l99RzDNAB4.png?width=1200)
6 ソースコード修正時の再デプロイ方法
GitHubにログインし、右上のアイコンからYour repositoriesをクリックします。その後、アップロード先のRepository名をクリックします。
![](https://assets.st-note.com/img/1676821934607-36lqmmA2bh.png?width=1200)
Add filesのUpload filesをクリックします。
![](https://assets.st-note.com/img/1676822110364-YOYTTz7QH5.png?width=1200)
オレンジのエリアに、ソースコード修正済ファイルをドラッグアンドドロップし、Commit changesをクリックします。
![](https://assets.st-note.com/img/1676817682690-tN9scL4wDp.png?width=1200)
Renderで自動的にデプロイ処理が開始されます。Renderのダッシュボード(https://dashboard.render.com/)にアクセスします。Deploy in progress→Deploy Succeededに変わったらデプロイ完了です。
![](https://assets.st-note.com/img/1676822614052-voLllfXE7Y.png?width=1200)
無料枠に関する公式説明
以下の内容を参考にしてください。
https://render.com/docs/free#free-web-services
この記事が気に入ったらサポートをしてみませんか?