超簡単に Azure で Ghost をホストする方法
Node.js 製の CMS である Ghost を Azure App Service (Web Apps) でホストするための手順を3ステップで紹介します。
前提条件
- Azure のアカウントがあること
- GitHub のアカウントがあること
Azure のアカウントを持っていない人は、ここから22,500円分のクレジット付きの無料アカウントを作成することができます。
Step 1. Ghost-Azure を fork する
Ghost-Azure は Ghost を Azure App Service でホストするためのテンプレートです。
Ghost-Azure を使用する利点には次のものがあります。
- Ghost-Azure のリポジトリは Azure Functions によって常に最新の Ghost を利用できるように更新されている
- 継続的デプロイメントに対応するように構成された App Service を1クリックでデプロイできる
Ghost-Azure の GitHub からワンクリックデプロイすると、継続的デプロイメントのソースが Ghost-Azure になるので、常に最新の Ghost が動く App Service を非常に簡単に構成できるようになります。
とはいえ Functions がうっかり悪さをしないとも限らないので、念のため自分のリポジトリに fork して使うことにします。
Step 2. Ghost を Azure にデプロイ
fork されたリポジトリにアクセスして、Deploy to Azure ボタンを押します。
遷移先のページで App Service の設定をします。
Site Name に指定した名前が Ghost の URL の一部になります。
この画像の設定では ghost-azure-sample.azurewebsites.net という URL になります。
Sku というのは App Service のプランです。
Free は無料で使えるプランで、1GBの RAM とディスク、1日あたり 60 CPU時間(分)が提供されます。
アクセスが少ないブログであればギリギリ耐えられそうです。
Deploy App Insights ではサービスを監視するための Application Insights をデプロイするかどうかを指定します。
基本的に無料で使えるはずですが、無料枠には上限があります。
デプロイしたくない場合は false に書き換える……というのは罠で、これでは真偽値としての false が設定されないので、azuredeploy.json ファイルを修正するか、デプロイ後に消す必要があります。
設定が終わったら Next を押し、遷移先で Deploy を押せば、デプロイが始まります。
Azure のポータルからもデプロイされていることを確認できます。
Step 3. 規定のドキュメントに index.js を追加
Azure のポータルからデプロイした App Service に移動して、構成 → 規定のドキュメント に index.js を追加し、保存します。
しばらくしてから https://設定したサイト名.azurewebsites.net にアクセスすると Ghost のページが表示されるはずです。
お疲れさまでした!