2
1

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 1 year has passed since last update.

ReactアプリをStatic Web AppsとCosmos DBにデプロイ(ドメイン登録まで)

Last updated at Posted at 2022-09-11

はじめに

今回は著者がハッカソンで作成した ReactアプリをAzureにデプロイする手順となります。それに加え、ムームードメインで取得したカスタムドメインを登録するまでをご説明します。

目次

アプリの説明

https://osakana-nazono-katakana.takatoshiinaoka.com/
今回Auzreにデプロイするアプリです。アプリの詳細はこちら

スクリーンショット 2022-07-18 10.16.32.png

StaticWebAppsの作成

Azure portal に移動し、「静的Webアプリ」を作成する。

スクリーンショット 2022-09-11 22.34.48.png
スクリーンショット 2022-09-11 22.35.09.png

デプロイ状況確認

Githubからのデプロイを指定すると、自動でymlファイルが作られ、CI/CDが構築されます。GithubのActionsからデプロイの状況を確認できます。
スクリーンショット 2022-09-11 22.43.03.png

アプリの動作確認

Azure portalのURLからアプリに移動できます。
スクリーンショット 2022-09-11 22.47.21.png

アプリのTop画面はこんな感じです。
スクリーンショット 2022-09-11 22.52.12.png

これで、アプリのデプロイができました。
が、このままではデータが無いので、データベースと接続しましょう。

CosmosDBの作成と接続

Azure portal に移動し、「CosmoDB」を作成する。

  • API オプションの選択、「コア (SQL) - 推奨」
  • 場所、「東日本」
  • 容量モード、「Serverless」

CosmosDB アカウントの作成 コア(SQL)

以下のように入力し、作成します。
スクリーンショット 2022-09-11 21.18.06.png

Service Unavailable エラーが出る場合
【CosmosDB】リソースを作成できない Service Unavailable エラーの解決方法

データベースの作成

CosmosDBのインスタンスの中に、データベースコンテナ を作成します。

{プロジェクト名}/api/{API名}/function.json ファイルのDB情報と一致させてください

スクリーンショット 2022-09-11 21.34.34.png

データのアップロード

すでに用意してあるJsonデータをDBにアプロードします。
スクリーンショット 2022-09-11 21.35.56.png

データの確認

アップロードしたデータを確認することができました。
スクリーンショット 2022-09-11 21.38.10.png

環境変数の設定

「キー」メニューから「プライマリ接続文字列」をメモします。
スクリーンショット 2022-09-11 21.38.48.png

Azure Static Web Appsの「構成」画面を開きます。
「追加」ボタンを押し、下記内容で追加後、「保存」を押下します。

  • 名前: CosmosDBConnection
  • 値: 先程メモしたAzure Cosmos DB接続文字列

スクリーンショット 2022-09-11 22.12.45.png

アプリの動作確認

データベースに繋いだので、問題と選択肢が表示されるようになりました。
スクリーンショット 2022-09-11 22.57.09.png

ドメインの登録

ログイン|ムームードメイン
著者が使用しているムームードメインの例で説明します。

DNSの設定

ログイン後、ムームーDNSのドメイン処理、変更をクリック。
スクリーンショット 2022-09-11 23.20.43.png
設定2のカスタムドメインでサブドメインを設定。

  • サブドメイン:osakana-nazono-katakana
  • 内容: azurestaticapps.netのURL(両端の「/」を除く)
    スクリーンショット 2022-09-11 23.24.01.png

アプリの設定

Azure portal のStaticWebAppsに移動、カスタムドメインをマップします。
スクリーンショット 2022-09-11 23.43.25.png
ドメイン名を入力し、検証と追加をします。(この操作は時間がかかります)

  • ドメイン名:サブドメイン+自分のドメインのURL(両端の「/」を除く)
    スクリーンショット 2022-09-11 23.47.08.png

カスタムドメインにアクセス

https://osakana-nazono-katakana.takatoshiinaoka.com/
少し時間を待つと「検証済み」となりドメインが反映されます。

参考文献

Svelte on Azure Static Web Apps with Azure Cosmos DB

2
1
0

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
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?