つばろぐ

主に C#, .NET, Azure の備忘録です。たまに日記。

microsoft/azurechat をデプロイする

娘に使ってもらおうと microsoft/azurechat をデプロイしました。

github.com

デプロイ

自分は Azure Developer CLI でデプロイできるものはそれを使う派なので、README に沿ってコマンドでデプロイしました。

azd init -t microsoft/azurechat
azd up

init の際に環境名 (environment name) の入力を求められます。
開発環境だからといって dev とつけてしまうと、リソースグループやリソースの名前も dev だけついて、なんのリソースだか分からなくなるので注意です。

$ azd init -t microsoft/azurechat

Initializing an app to run on Azure (azd init)

  () Done: Initialized git repository
  () Done: Downloading template code to: /home/yuta/source/azd/azure-chat

? Enter a new environment name: azurechatdev

また、たまにリソースはデプロイできても、アプリのデプロイに失敗するときがあります。
そのときは再度 azd up を実行します。

認証の準備

Azure Chat は2種類の IdP を設定することができます。

  1. GitHub
  2. Microsoft Entra ID (Microsoft 365)

今回は Entra ID の認証の構成を行います。

azurechat/docs/5-add-identity.md at main · microsoft/azurechat · GitHub

Entra ID にアプリケーションを登録し、デプロイ後に作成された Azure Web App をリダイレクト URI に指定します。
また、クライアントシークレットを発行し、Azure Chat の環境変数に設定します。

AZURE_AD_CLIENT_ID=
AZURE_AD_CLIENT_SECRET=
AZURE_AD_TENANT_ID=

なお AZURE_AD_CLIENT_SECRET のみ、Azure Key Vault シークレットに登録し、それを参照する設定にしました。

aadojo.alterbooth.com

ログイン

では Azure Chat から Entra ID でログインします。
いつものように初回のアクセス許可の要求を経て、無事に Azure Chat を使い始めることができました。

画像も生成できる

いつの間にか Azure Chat から画像を生成できるようになっていました。
試しに「海辺でソフトクリームを食べるジャイアントパンダ」の画像を要求してみましたが、DALL-E 3 モデルでいい感じです。