こんにちは、Akira(Type-EDGE)です。
あなたはPythonを使っていますか?
私はRaspberry Pi 5とPythonを組み合わせて、Google AI Studioとつないだり、音声をテキストにしたりしています。
文字通り、Pythonで遊んでいる状態です。
とはいえ、今の所、ssh接続をしたCLIでのやり取りなので、面白みが欠けたり拡張性が乏しかったりと少し物足りなさを感じてきたところです。
そこで今回はWEBフレームワークであるFastapiを導入して、http通信によるRaspberry Piとの疎通に挑戦しようと思い立ちました。
WEBフレームワークなので、html/cssを利用すればGUIを簡単に生成できますし、クライアントマシン側でアプリ開発を行うことも視野に入れることができます。
それでは、まずはFastapiの開発環境を作ってみましょうッ!
PythonのWEBフレームワーク「Fastapi」開発環境の構築して、http経由で接続する
前提条件
先だって申し上げておきますが、pythonの仮想環境を構築済です。
以下の記事でPythonの仮想環境を構築する方法を記載しましたので、これから環境構築する方は是非参考にしていただけると嬉しいです。
https://www.type-edge.com/2025/02/raspberry-pi-5-python.html
Fastapiをインストールする
以下のドキュメントに沿って環境を作成していきます。
https://fastapi.tiangolo.com/ja/tutorial/#fastapi
まずpythonの仮想環境を立ち上げて、Fastapiとunicornをインストールします。
pip install fastapi
pip install "uvicorn[standard]"
fastapiを起動する前に、Raspberry Pi 5のufwを許可しておきます。
sudo ufw allow 8080
またIPアドレスを確認しておきましょう
hostname -I
接続用のpythonプログラムを作成する
以下は公式に書かれたコードです。
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
async def root():
return { "message": "Hello World" }
Fastapiサーバを立ち上げて、http経由で接続する
ここまで終えたら、fastapiのサーバを立ち上げます。
uvicorn main:app --host 0.0.0.0 --port 8080 --reload
無事に立ち上がったら、Hello Worldの表示が出ます。
最後に
今回はPythonのWEBフレームワーク Fastapiの環境構築について記事にしました。
pythonの仮想環境ができていれば、サクッと環境が作れてしまうのでとても簡単な印象を覚えました。
とはいえ、現状は防御が無いので外部からの干渉にとても弱いです。
実際にはセキュリティを考慮して構築しなければならないでしょう。
とはいえ、それは先の話としておきましょう。
まずはFastapiについて理解を深め、適切なサービスを構築していくのが求められています。
今回の記事は如何でしたか?
もし今回の記事が良かったと思った方や評価したいと思った方は、コメントを残して頂けると嬉しいです。
また、私はパソコン以外にも記事を書いていますので、そちらも読んでいただけると幸いです。
0 件のコメント:
コメントを投稿