け い ざ ん の D I Y 工 房

◆Home
◆住まいの D I Y
◆パソコン D I Y
◆ROBOT D I Y
◆電子工作 D I Y
◆Science

● Flaskを使って RaspberryPi Serverを作る

 2026.05.24

 RaspberryPi Carの Remote制御に、今まで WebIOPiを使用していましたが、
 Raspi OS Ver.12 (bookworm)以降では動作しなくなってしまいました。
 この原因は Raspi OS 12 (bookworm)では、python2関連のcommandの廃止が行われたからです。
 WebIOPiは python2に依存して作られており、開発も 2015年以降は止まったままです。
 新たに Raspiの Remote制御を作る場合は、WebIOPi以外を選択する方が無難です。
 ここでは、簡単に Web serverを構築できる Flaskを紹介します。

 Flaskは web siteを開発する時の debug用に開発されたもので、programは pythonで
 書かれており数行の命令を書くだけで簡単に web siteから RasPiに Remote接続ができます。
 ただし、securityを考慮していないので公開 serverなどには使用しないでくださいと
 開発者は述べています。
 flaskは数行の commandで serverを構築できるので、エアコンの制御や、天井灯の ON/OFF制御や
 Browserからの RasPi Remote制御には最適です。

 Flaskは RasPiの基本機能として defaultで installされているので、新規に installする必要もなく
 使用する事ができます。
 

 


【flask Folderを作る】
 まず、home の配下に flask専用の flasksvという folderをつくります。
 作った flasksv folder内に app.pyというfileを作ります。
 これは app.pyという名前にしなければいけません。
 app.pyには以下の 7行を書き込みます。
 $ ~/mkdir flasksv
 $ cd /home/pi/flasksv
 $ sudo nano app.py
  from flask import Flask, render_template
  app = Flask(__name__)
  @app.route("/")
  def index():
   return render_template("index.html")
  if __name__ == "__main__":
   app.run(host="0.0.0.0", debug=True, port=5000)

  ctl + O で書き込み、ctl + x で終了。


【templates folderを作る】
 /flasksv folderの中に templates folderをつくり index.htmlを入れる。
 これは templatesという名前にしなければいけません。
 $ /home/pi/flasksv: mkdir templates
 $ cd templates
 $ sudo nano index.html
   index.html の中身
 html-top
   ctl + O で書き込み、ctl + x で終了。



【実行してみる】
 flasksv folderに移動して flaskを起動します。
 $ cd /home/pi/flasksv:
 $ flask run --host=0.0.0.0 --port=5000
 
 --host=0.0.0.0は 127.0.0.1以外の IP Addressから Acsess出来る様にするため指定するものです。
 Errorが出なければ serverは起動しています。
 web serverの終了は ctl + c で終了します。
 
 
【ifconfigで RasPiの Addressを調べる】
 RasPi の IP Addressを調べるには ifconfigまたは ip addrを使用します。
 $ ifconfig
  wlan0: flags=4163 UP,BROADCAST,RUNNING,MULTICAST mtu 1500
     inet 192.168.1.11 netmask 255.255.255.0 broadcast 192.168.1.255


【他の PCから Acsessしてみる】
 Network内にある他のパソコンから Web Browserを開いて
 RasPiの IP Address (192.168.1.11)を入力します。
 port番号は flask起動時に使用した :5000を使用します。
 Hello, World! 画面が表示されれば成功です。
 

【起動 fileを作る】
 Flask serverを使用する目的に応じて起動 fileや systemd fileを作成するとよいでしょう。
 
 


----------------------------------------------------------------------------------------------------------------------------
・けいざん美術館
・Blog 油絵もろもろ
・EXCEL VBAであくせく
・けいざんの食べログ


                 Site Designed by Kasio Keizan