SummerEye part10 -Azure Web App for Containersへ移行-
Azure Web Appでアプリケーションを作っていたら、pipでライブラリをインストールできない問題にぶち当たりました。
一応解決手段をQiitaで見つけたのですが、
大変そうなので、Azure Web App for Containersを勉強してこちらに移行することにしました。
Dockerfile作成
こんな感じでSummerEyeのプロジェクトに合わせたDockerfileを作成しました。
以下のコマンドでローカルでDockerを利用してプロジェクトを動かすことができるのを確認しました。
docker build -t summereye . docker run -p 4000:5000 summereye
ところが、Firebaseと連携したログイン機能を使おうとすると、以下のエラー。
ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed
docker execコマンドでコンテナの中に入って色々見てみます。
どうやらhttpsにリクエストを飛ばすとエラーが出る模様。
httpなら問題なし。
Dockerfileに
RUN apt-get install libssl-dev -y
を追加しました。
これで解決。
Firebaseと連携してログインできました。
Dockerfileを追加したプロジェクトをGithubにpush。
Docker Hub側で対応するリポジトリを作成。
Azure Web App for Containersを作成し、上記のDocker Hubのイメージを利用するよう指定。
5000番ポートを開通。
ログイン成功!
なぜかWeb App for Containersの場所がWest Europeになってしまったせいか、画像表示が遅いですが、
とりあえず、動くようになりました。
あとは継続的デプロイの設定を追加で行って、移行終了です。
さよならWeb App、こんにちはWeb App for Containers。