5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Microsoft Azure】Flaskでwebアプリ作ってコロナ対策に貢献した話

Last updated at Posted at 2020-12-04

概要

2020年7月当時私の所属している香川高専詫間キャンパスでは,面接授業の再開に伴い寮生活も再開されようとしていました.
しかし,感染症対策の叫ばれる昨今,様々なところで対策を講じなければなりません.食堂然り,居室然り.
その一環として「浴室での感染症対策」も必要になりました.そこで開発したのが**"浴室予約システム"**です.
bath-reserve-form.png

)
他の集団生活のある場所でも活用できると思い,今回の事例を共有します.

開発・運用

ご存知かもしれませんが,高専生には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の使用方法は公式リファレンスが非常に充実しているため,是非そちらをご覧いただければとおもいます.

運用していて困ったこと

  1. AppServiceからSQLにアクセスできない
    これは,AzureSQL側で"Azure サービスおよびリソースにこのサーバーへのアクセスを許可する"という項目を"はい"に設定していなかったことが原因でした.
  2. 100$分のクレジットが切れたとき,データの取り出しなどができなかった
    サブスクリプションが有効な間は,各リソースの"移動"から,かんたんに別のサブスクリプションへの移動ができます.
    しかし,100$の無料クレジットを使い切った学生用サブスクリプションからは移動できず,また,データベース内の情報を取り出すこともできなかったため,復旧に必要な作業が多かったです.

使用方法

このシステムは,ベース部分を1週で作った突貫工事品です.そのため,様々な問題やバグを抱えている可能性があります.
それでもよければ,上に記した実行環境(Azure App Service + Azure SQL)を用意していただき,Githubリンクからファイルをダウンロードしたあと,"my_server_setting.py"という名前で以下の書式に乗っとりファイルを作成することで,デプロイし,実行できるようになるはずです.

my_server_setting.py
# サーバー設定
server = 'データベース接続文字列'
database = 'データベース名'
username = 'あなたが設定したデータベースのユーザー名'
password = 'あなたが設定したデータベースのパスワード'
driver = '{ODBC Driver 17 for SQL Server}'

まとめ

終わりの見えないこの状況の中で,同様の問題に直面している方の助けになれば幸いです.
ではまた.

5
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?