タスク 2 - Azure Container Registry 接続情報を追加
Azure Container Registry に Docker イメージをプッシュする際に認証が必要なため、接続情報と認証処理を GitHub アクションに追加します。
本タスクは、演習 1 で作成された API アプリとUI アプリ 両方の GitHub リポジトリに対して作業を行いします。
演習作業簡略化のため、ファイルの作成と編集は main ブランチに対して直接行います。
作業
- 鉛筆マーク
のボタンをクリックし、.github/workflows/build-deploy.ymlファイルを編集モードで開きます。操作画面イメージ

-
Azure Container Registry のアクセスエンドポイントを定義するための変数を作成します。
.github/workflows/build-deploy.ymlファイル上部の on ステートメントのすぐ下の行に、下記envとその下にCONTAINER_REGISTRYを追加し、Azure Container Registry のドメイン (~.azurecr.io) を設定します。Tips:
- 変数は、ワークフロー ファイルのさまざまなスコープで作成できます。 本ハンズオンではワークフロー ファイル全体で使用できるようトップスコープで 定義します。
- Azure Container Registry のドメインは、準備作業で作成された Azure Container Registry リソースの
概要タブログインサーバーにで確認できます。
操作画面イメージ

-
下記
stepのコードを.github/workflows/build-deploy.ymlファイルの末尾に追加します。# Add a step - name: Log in to container registry # 認証処理を行うためのアクション uses: docker/login-action@v2 with: registry: ${{ env.CONTAINER_REGISTRY }} username: ${{ secrets.CONTAINER_REGISTRY_USERNAME }} password: ${{ secrets.CONTAINER_REGISTRY_PASSWORD }}注意 各行のインデントを間違いと構文エラーになりますので、ご注意してください。
Start commitをクリックし、Commit directly to the main branchとなっていることを確認した上で、Commit changeseボタンをクリック操作画面イメージ

- リポジトリの
Secretsに Azure Container Registry への接続情報を保存します。
Azure Container Registry の [アクセス キー] よりユーザー名とpasswordをコピーします。操作画面イメージ

- リポジトリの [Settings] -> [Secrets] -> [Actions] と辿り、
New repository secretボタンをクリックしSecretを追加します。操作画面イメージ

CONTAINER_REGISTRY_USERNAMEを追加し、上でコピーした Azure Container Registry のユーザー名を保存します。
操作画面イメージ

- 同様に
CONTAINER_REGISTRY_PASSWORDを追加し、上でコピーした Azure Container Registry のpasswordを設定します。
操作画面イメージ

確認
.github/workflows/build-deploy.ymlファイルの変更ができていることを確認します。操作画面イメージ

- リポジトリの
SecretsにCONTAINER_REGISTRY_USERNAMEとCONTAINER_REGISTRY_PASSWORDが作成できていることを確認します。操作画面イメージ

- タスク 1 の 4. と同様に、手動実行でワークフローを起動します。
- ワークフロー処理はエラーなく終了し、build ジョブのログに
Login Succeeded!のメッセージがが出力されていることを確認します。操作画面イメージ