Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
DeployToAzureポチからの卒業 / LT_DeployToAzure
Search
sou
January 15, 2022
Technology
470
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
DeployToAzureポチからの卒業 / LT_DeployToAzure
sou
January 15, 2022
More Decks by sou
See All by sou
Azure におけるコンテナ基盤選定について / azure-container-platform-selection
08thse
0
590
AKS コントロールプレーン監視のためのメトリクス / aks-control-plane-metric-preview
08thse
0
300
Gatekeeper と Azure Policy (rev.1) / gatekeeper-azpol
08thse
0
210
読み物からのエンジニア的な学び / Learning from Reading
08thse
0
210
Azure Container Apps 気になるアップデート (2023/5) / ACA_Update_202305
08thse
0
310
Azure Container Apps 触ってみる / LT_AzureContainerApps
08thse
0
750
Deeperという人材カテゴリに共感した話
08thse
0
210
LT_Documentation
08thse
0
95
Other Decks in Technology
See All in Technology
エンタメ企業のM&Aを支えるデータ基盤 ― 統合から店舗のリアルタイム分析まで / Data Engineering Summit 2026
genda
0
180
AI駆動で「他アプリの音を加工できる」アプリを作った
satomasahiro2005
0
160
Conditional PED-ANOVA: Hyperparameter Importance in Hierarchical & Dynamic Search Spaces
pfn
PRO
0
140
Classmethod Company Deck
satoshi7
1
700
しろおびから始める!ログ活用の第一歩
shumei_ito
0
950
分析AIエージェントを育てる、動く環境を育てる
codatum
1
1.1k
実践!Cloud Run ハンズオン!! / Cloud Run handson
y0hgi
2
280
Optunaの最新リリースv5.0について
pfn
PRO
0
120
JAWS-UGグッズ職人仕事の流儀
kentapapa
0
110
Browser Spec: Testing Hotwire with Ruby
takahashim
1
120
⾮構造化データを価値に変える AI エージェント基盤とその組織
ivry_presentationmaterials
0
190
Temporal 最高!でも改めて「日付」について調べたら人類の負債すぎる件
riyaamemiya
0
150
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
20k
First, design no harm
axbom
PRO
2
1.3k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.9k
Large-scale JavaScript Application Architecture
addyosmani
516
110k
Google's AI Overviews - The New Search
badams
0
1.6k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
630
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
BBQ
matthewcrist
90
10k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
780
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
600
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
300
[SF Ruby Conf 2025] Rails X
palkan
3
1.5k
Transcript
Deploy to Azure ポチからの卒業 sou (@08thse)
2
3
4 Deploy to Azure の動作 ARM Template (Azure Resource Manager)
5 ARM Template の中身 { "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters":
{ "virtualMachineSize": { "type": "string", "defaultValue": "Standard_DS1_v2", "metadata": { "description": "Virtual machine size (has to be at least the size of Standard_A3 to support 2 NICs)" } }, "adminUsername": { "type": "string", "metadata": { "description": "Default Admin username" } }, "adminPassword": { "type": "securestring", "metadata": { "description": "Default Admin password" } }, .. .. ..
6 ARM Template の構造 { "$schema": "https://schema.management.azure.com/...", "contentVersion": "1.0.0.0", "parameters":
{ ... }, “variables": { ... }, “resources": { ... }, ... }
7 ARM Template の構造 (1/3) { "$schema": "https://schema.management.azure.com/...", "contentVersion": "1.0.0.0",
"parameters": { ... }, “variables": { ... }, “resources": { ... }, ... } parameter (引数) • テンプレートのデプロイ時に値を入力させる
8 parameter (引数) "parameters": { "virtualMachineSize": { "type": "string", "defaultValue":
"Standard_DS1_v2", "metadata": { "description": "Virtual machine size" } }, "adminUsername": { "type": "string", "metadata": { "description": "Default Admin username" } }, "adminPassword": { "type": "securestring", "metadata": { "description": "Default Admin password" } }, ... }, https://docs.microsoft.com/ja-jp/azure/azure-resource-manager/templates/template-parameters
9 ARM Template の構造 (2/3) { "$schema": "https://schema.management.azure.com/...", "contentVersion": "1.0.0.0",
"parameters": { ... }, “variables": { ... }, “resources": { ... }, ... } parameter (引数) • テンプレートのデプロイ時に値を入力させる variable (変数) • テンプレート中で使う変数を定義 • 関数等を使って文字列構築もOK
10 variable (変数) "variables": { "nic1": "nic-1", "nic2": "nic-2", "virtualNetworkName":
"virtualNetwork", "subnet1Name": "subnet-1", "subnet2Name": "subnet-2", "publicIPAddressName": "publicIp", "networkSecurityGroupName": "NSG", "networkSecurityGroupName2": "[concat(variables('subnet2Name'), '-nsg')]" "diagStorageAccountName": "[concat('diags',uniqueString(resourceGroup().id))]", }, https://docs.microsoft.com/ja-jp/azure/azure-resource-manager/templates/template-variables 定数的に定義 関数を使って文字列作成 適当な文字列も作れます もちろん定義済み変数も利用可能
11 ARM Template の構造 (3/3) { "$schema": "https://schema.management.azure.com/...", "contentVersion": "1.0.0.0",
"parameters": { ... }, “variables": { ... }, “resources": { ... }, ... } resource (Azureリソース定義) • 各Azure Resource毎に構造を定義
12 一言でいうとAzureリソース毎の定義をコードで記載しているだけ resource (Azureリソース定義) { "type": "Microsoft.Storage/storageAccounts", "name": "[variables('diagStorageAccountName')]", "apiVersion":
"2019-06-01", "location": "[parameters('location')]", "sku": { "name": "[parameters('storageAccountType')]" }, "kind": "StorageV2" },
13 一言でいうとAzureリソース毎の定義をコードで記載しているだけ サービスによって書き方がまちまちなので・・・ ▪参考元 (Azure QuickStart Templates) https://azure.microsoft.com/ja-jp/resources/templates/ https://github.com/Azure/azure-quickstart-templates ▪リファレンス
https://docs.microsoft.com/en-us/azure/templates/ 自動テストが失敗しているものは動かない可 能性が高いので注意 resource (Azureリソース定義) 2021/2/4現在、985個のテン プレート
14 ARM Template の構造 { "$schema": "https://schema.management.azure.com/...", "contentVersion": "1.0.0.0", "parameters":
{ ... }, “variables": { ... }, “resources": { ... }, ... } parameter (引数) • テンプレートのデプロイ時に値を入力させる variable (変数) • テンプレート中で使う変数を定義 • 関数等を使って文字列構築もOK resource (変数) • 各Azure Resource毎に構造を定義 その他 • 実施終了時のアウトプット文字列なども設定可能
15 あとは QuickStart Template を参考に書いてみるだけ!