SummerEye part10 -Azure Web App for Containersへ移行-

Azure Web Appでアプリケーションを作っていたら、pipでライブラリをインストールできない問題にぶち当たりました。

SummerEye part9 -会員機能追加-

 

一応解決手段をQiitaで見つけたのですが、

 

大変そうなので、Azure Web App for Containersを勉強してこちらに移行することにしました。

Azure Web App for Containers

 

Dockerfile作成

こんな感じでSummerEyeのプロジェクトに合わせたDockerfileを作成しました。

DockerHub + GitHub連携

 

以下のコマンドでローカルで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。

 

参考

コメントを残す