3
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 3 years have passed since last update.

Azure Container InstancesからAzure PowerShellを実行する

Posted at

前回の記事 DockerコンテナからAzure PowerShellを実行する は、ローカル環境のDockerコンテナから
Azure PowerShellを実行しました。
今回はAzureのコンテナサービス Azure Container Instances(ACI) を使ってみます。

コンテナの作成

Azureポータルからコンテナーインスタンスを選んで追加。

情報を入力していきます。

基本

イメージはDocker HubのAzure Powershellを使用します。
Azure Container Registry等、自分で作成したコンテナの利用も可能ですね。

ネットワーク

今回はコンテナを仮想ネットワーク内に配置します。
サブネットはACI専用のものが必要になります 1 ので空のサブネットを用意してください。

詳細

コマンドのオーバーライドに[ "tail", "-f", "/dev/null" ]を入れます。
これがないとコンテナ起動後すぐにプロセスが落ちてコンテナも停止します。
ここ大分ハマりました…。
プロセスが停止しないコマンドなら他の物でも大丈夫な気がします。試していませんが…

上記入力完了後、作成ボタンを押下してコンテナを作成します。
デプロイは数分程度掛かります。


……
………

起動!

コンテナにアクセスしてみる

Azureポータルからコンソール接続できます。
設定 -> コンテナー -> 接続タブで使用するコマンドを選択しConnect。
コマンドはpwshと入力することでPowerShellが使えます。

ログインできました。

ローカルのターミナルからアクセスしてみる

ローカルのターミナルからアクセスするにはAzure CLIを使用します。
Azure PowerShellは、アクセス可能なコマンドがないので無理そうです。
この為に普段使わないAzure CLIをインストールしました。
Azure PowerShellのACIコマンドレット

Azureのログイン。
Azure PowerShellと同様に表示されるURLにブラウザでアクセスし認証コードを入力します。

az login
To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code xxxxxxxxx to authenticate.

ログインアカウントが複数サブスクリプションに紐づいている場合は、ACIを作成したサブスクリプションを選択してください。
サブスクリプションの一覧はaz account listで出せます。

az account set -s <サブスクリプションID>

az container exec コマンドでコンテナにアクセスします。
オプションで高さと幅を指定しています。
デフォルトで高さ200、幅80となっており、このサイズが小さいとターミナルで正しく表示できないため、大きめに指定する必要があります。

az container exec --resource-group <リソースグループ名> --name <ACI名> --exec-command "pwsh" --terminal-col-size 1000 --terminal-row-size 1000

PowerShell 7.0.0
Copyright (c) Microsoft Corporation. All rights reserved.

https://aka.ms/powershell
PS /> help' to get help.
PS /> 

終わりに

これでサーバーレス(Cloud Shellを除く)でAzure PowerShell実行環境を作ることが出来ました。
ジョブスケジューラと上手く連携出来たら運用で使えそうです。

  1. 仮想ネットワーク内の配置について :https://docs.microsoft.com/ja-jp/azure/container-instances/container-instances-vnet

3
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
3
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?