Skip to content

MS_AzureCloudShell

nishi_74322014 edited this page Aug 12, 2026 · 1 revision

Azure Cloud Shell

概要

  • Azure Subscription の管理で、そろそろ必要になったので。
  • Azure リソースを管理するための、ブラウザーでアクセスできるシェル。
  • Linux ユーザーは Bash(MS_Bash.md)を、
    Windows ユーザーは PowerShellを選ぶことができる。
    • 各ツールに Bash と PowerShell 両方のエクスペリエンスのサポートがあるもよう。
    • Bash サポートが先で PowerShell は後発(プレビュー)だったりした。

補足(何が嬉しいのか): Cloud Shell の価値は
**「ローカルに何もインストールしなくてよい」**という一点に尽きる。

項目 内容
認証済み ポータルにログインした ID でそのまま認証済みaz login が不要
ツール同梱 Azure CLI / Azure PowerShell / kubectl / terraform / git / jq などが最初から入っている
どこからでも ブラウザ、Azure モバイルアプリ、Visual Studio Code拡張から
無料 シェル自体は無料(アタッチするストレージのみ課金)

「一時的に 1 コマンド打ちたい」「手元の端末に CLI が入っていない」
といった場面で最も効く。

詳細

Azure Cloud Shell を起動して、以下を選択すれば、直ちにシェルを開始できる。

シェル言語

セッション維持

概要

  • 初回起動時に、Microsoft Azure ファイル共有のアタッチについて案内される。
  • 以後すべてのセッションで、ストレージが自動的にアタッチされる。

使用ドライブ

  • アタッチしたストレージは以下ドライブとして参照できる。

    $home\clouddrive
    
  • ドライブ外のファイルやマシンの状態は、セッション間で保持されない。

補足(この制約が最も重要): Cloud Shell のコンテナは
一定時間(既定 20 分)操作が無いと破棄される
$HOME/clouddrive(および $HOME 直下の一部)以外に置いたファイルは
消える

場所 永続性
$HOME/clouddrive 永続(Azure Files にマウント)
$HOME 配下 永続(acc_<user>.img として保存される)
/tmp などその他 揮発(セッション終了で消える)
apt install したパッケージ 揮発

スクリプトや設定は必ず clouddrive に置く。
追加ツールが恒常的に要るなら、Cloud Shell ではなく
ローカルまたは WSL を使う方が向く。

Azureサブスクリプションの選択

Azure サブスクリプションを選択しても API としては、
Azure サブスクリプション ID を要求するものもある。

ファイルのアップロードと実行

アップロード

Azure Cloud Shell ウィンドウ

  1. Cloud Shell にサインイン。
  2. [PowerShell]または[Bash]を選択
  3. [ファイルのアップロード/ダウンロード]を選択し、[アップロード]を選択。
  4. ファイルを選択し、[開く]を選択。

ストレージのマウント

clouddrive としてマウントされた Azure Files 共有に、
ポータルや Storage Explorer から直接ファイルを置くこともできる。

PowerShell

ps1ファイルをアップロードして実行

  • 以下でアップロードした ps1 ファイルを確認できる。

    cd $Home\CloudDrive
    dir
  • 以下のように実行できる。

    .\XXXX.ps1 -parameterName1 parameterValue1 -parameterName2 parameterValue2
  • 注意

    • ps1 ファイルに日本語が含まれる場合、UTF-8 で保存
    • アップロードの際は要注意。

補足(文字コードの注意): Cloud Shell の PowerShell
PowerShell 7(Core) なので、既定のエンコーディングは UTF-8 である。
Windows の Windows PowerShell 5.1 で作った
Shift-JIS(CP932)のスクリプトをそのまま持ち込むと文字化けする。

ローカルで保存する際は「UTF-8(BOM なし)」を選ぶ。
BOM 付き UTF-8 も PowerShell 7 なら読めるが、
Bash 側で使うスクリプトでは BOM が邪魔になるため、
BOM なしに統一しておくのが無難である。

参考

Microsoft Learn


Tags: 移行, シェル, インフラストラクチャ, クラウド, Azure

NetDevInfraWiki

マイクロソフト系技術情報 Wiki
Open 棟梁 Wiki

(未着手)

開発基盤部会 Wiki

移行管理: DONETODO

Clone this wiki locally