BlazorとAzureStaticWepAppsでWebサイトを作って公開しよう！

# この記事の対象
・Githubでリポジトリを使って作業している
・VisualStudio2022を使用している
・Webサイトを作りたいがWeb系の言語を知らない
・C#なら知ってる
・楽にWebサイトを作りたい！

# キッカケ
周りにサイトを自作する人がいたのとカッコイイポートフォリオサイトを作っているUnityエンジニアを見かけて憧れたため。

# 作ろう！
最終的に必要なものは、
・公開するWebサイト
・[Azure](https://azure.microsoft.com/ja-jp/get-started/azure-portal)のアカウント
です。

# 公開するWebサイトの作成
Blazor(ブレイザー)を使って作っていきましょう！Blazorのメリットとデメリットは以下の通りです。

メリット
・C#が使える。
デメリット
・サイトを開いたとき、ロードに時間がかかる

あれ、メリット薄くない...と思ったあなた！
この後使うAzureStaticWebAppsを使うことで公開までが爆速でできるようになります！

### 手順1　テンプレートを用いてリポジトリを作る

以下のサイトにアクセスして「Use this templete」をクリック。

https://github.com/staticwebdev/blazor-starter

![dd66dd6e0179c6866c5ad790ed71ff99.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2654136/cd554a76-0ac9-571d-a2d5-e6ee0eb42bd1.png)
これをクリックして表示される「create new repository」を選択、リポジトリ作成画面が表示されるのでリポジトリ名などを適当に記入。公開設定はどちらでも大丈夫ですので、privateにしておきましょう。

### 手順2　ローカル環境で実行してWebサイトを確認する
ここまででひとまずテンプレートを使ったリポジトリができました。この時点でWebサイトの原型はできているので自分のPCにクローンして動くか確認してみましょう。
クローンはCLIやSourceTree,Github Desktopでも可能ですが、今回はvisualStudioで開くので以下のようにVisualStudioで開くを選択するのが楽かもしれません(Codeを押して出てきた「Open with Visual Studio」を選択)。
![8c599c93686f6e7e5b5df12a9f5d5c16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2654136/472a48a3-0587-b463-49b1-1a4f831d7c19.png)
クローンする画面が出てくるのでクローンを押しましょう。
その後以下のような画面になると思います。そうしたらビルドボタンを押しましょう！

![6bf446f8b8c254bb777f2f3197a8b99d.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2654136/8764cef9-4a0d-07c1-0402-835ef37af7f5.png)

するとあら不思議！もうWebサイトができてしまいました！

![4d5c1ed652cc507f8b98f1354d357132.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2654136/e1813ca8-d308-220f-dcc3-63c5471c9cf9.png)

はい、これでひとまずサイトの作成は完了です。あとはここから自身で好きなようにテンプレートサイトをいじることで思いのままにしてみましょう！

以下はテンプレートを改造した私のサイトです。サイドバーにアクセスできるページを追加したり背景を差し替えたりしてみました。サイトの表示を変える場合はHTMLやCSSを触る必要があるのでChatGPTに聞きながら作成してみましょう。興味があれば、HTMLやCSSを学習するのもいいかもしれません。

![688d419b7a3b48212e12e10e7b5d15eb.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2654136/ddc9c0a9-d5cb-58f5-eeaa-2f797992b2bf.jpeg)

### 手順3　AzureStaticWebAppsを利用してデプロイ(公開)する
ここからは作成したWebサイトを公開してみましょう。まずは以下のサイトにアクセスしてログイン/サインアップしましょう。

https://azure.microsoft.com/ja-jp/get-started/azure-portal

静的Webアプリの設定前にサブスクリプションを設定する必要があります。設定は以下を参照。

https://learn.microsoft.com/ja-jp/azure/cost-management-billing/manage/create-subscription

リソースの作成から静的Webアプリを選択。作成を押す。

基本タブから先ほど作成したサブスクリプションを選択。名前を入れて、ホスティングプランにはFreeを選択。

![42631d80fd4ac9878b7d8cbb6bfefd94.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2654136/ed7ee87c-4ce1-d07a-b2d8-e7f10bce1b87.png)

![793174fcdbaf78db107bad204c819154.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2654136/764e865b-be27-0ec9-fda0-461187068790.png)

自身のGithubアカウントを選択し、先ほど作成したリポジトリを選択。自動でブランチやビルドの詳細などは入力されます。

![6430849e84a3bc3d34a53422c61486ef.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2654136/735be2bf-60df-e424-f86b-5ccc58ba7274.png)

「確認及び作成」を押した後に「作成」を押すことで後は自動的にデプロイしてくれます。
その後表示される画面でブラウザーにアプリを表示を押すことで実際に公開されているサイトを見ることができるようになります。

![67a9e9cf0e1804f00ac9225c67b507de.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2654136/6d893d7d-2398-5b18-3e3e-cb74597c7e1c.png)

完了！

# やった後気づいたこと
自分の思う通りの表示をするのにHTMLやCSSをいじる必要があった。しかも思い通りにするのは結構大変。
そんな中最初に挙げた憧れてた人のサイトを参考にするために見にいったらこのような文言が。

![5299124d4484d277c62657299006962d.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2654136/8a1c142b-a8b4-7812-39e9-ef3aa292cd51.png)

さらに調べた感じWordPress×お名前ドットコムが手軽にサイトを作るには良さそうだと分かりました。
次回はWordPress×お名前ドットコムで作ってみようと思います。