概要
2020年7月当時私の所属している香川高専詫間キャンパスでは,面接授業の再開に伴い寮生活も再開されようとしていました.
しかし,感染症対策の叫ばれる昨今,様々なところで対策を講じなければなりません.食堂然り,居室然り.
その一環として「浴室での感染症対策」も必要になりました.そこで開発したのが**"浴室予約システム"**です.
)
他の集団生活のある場所でも活用できると思い,今回の事例を共有します.
開発・運用
ご存知かもしれませんが,高専生にはMicrosoftの包括ライセンスでMicrosoft Azureで使える100$分のクレジット付きサブスクリプションが配布されています.
今回はこちらを利用してシステムの開発・運用を行いました.(その後,従量課金制のサブスクリプションに変更)
開発・実行環境
- Visual Studio Code(Azure App Serviceの拡張機能をインストールして使用)
- Python3.8 + Flask
- Microsoft Azure App Service(Python3.8を選択)
- Microsoft Azure SQL
上記の環境をUbuntu20.04 or Win10上から使用しました.
参考にしたサイト
Azureの使用方法は公式リファレンスが非常に充実しているため,是非そちらをご覧いただければとおもいます.
- クイック スタート:Azure App Service on Linux で Python アプリを作成する
- 手順 - Web アプリケーションを実装するコードを記述する
- チュートリアル:Visual Studio Code から Azure App Service on Linux に Python アプリをデプロイする
運用していて困ったこと
-
AppServiceからSQLにアクセスできない
これは,AzureSQL側で"Azure サービスおよびリソースにこのサーバーへのアクセスを許可する"という項目を"はい"に設定していなかったことが原因でした. -
100$分のクレジットが切れたとき,データの取り出しなどができなかった
サブスクリプションが有効な間は,各リソースの"移動"から,かんたんに別のサブスクリプションへの移動ができます.
しかし,100$の無料クレジットを使い切った学生用サブスクリプションからは移動できず,また,データベース内の情報を取り出すこともできなかったため,復旧に必要な作業が多かったです.
使用方法
このシステムは,ベース部分を1週で作った突貫工事品です.そのため,様々な問題やバグを抱えている可能性があります.
それでもよければ,上に記した実行環境(Azure App Service + Azure SQL)を用意していただき,Githubリンクからファイルをダウンロードしたあと,"my_server_setting.py"という名前で以下の書式に乗っとりファイルを作成することで,デプロイし,実行できるようになるはずです.
# サーバー設定
server = 'データベース接続文字列'
database = 'データベース名'
username = 'あなたが設定したデータベースのユーザー名'
password = 'あなたが設定したデータベースのパスワード'
driver = '{ODBC Driver 17 for SQL Server}'
まとめ
終わりの見えないこの状況の中で,同様の問題に直面している方の助けになれば幸いです.
ではまた.