はじめに
今回はDockerサービスである「Azure Container Instancse」について解説していきます。
- ある程度 Docker について知見がある
- 他のサービスとの比較をしたい
- さくっとどんなサービスか時間をかけずに知りたい
こんな方向けの解説です。
Azure Container Instancse の概要
Dcokerベースのコンテナを簡単かつ高速に構築することができる、フルマネージドなDockerサービスです。
アクセスは HTTPS 経由で行われ、TLS を使用してクライアント接続がセキュリティで保護されます。
利用できるDockerレポジトリ
「Docker Hub」や「Azure Container Registry」からコンテナー・イメージをプルして、コンテナーを起動できます。
一般に公開されているもの、個人でカスタマイズしたものとも利用可能です。
リソースのサイズ
CPUとメモリの組合せを選ぶことができます。以下が選択可能です。
CPUコア⇒1コア、2コア、3コア、4コア
メモリ⇒1.0GB、1.5GB、2.0GB、2.5GB、3.0GB、3.5GB、7.0GB、17.0GB
ストレージ
コンテナーの停止後もストレージ状態を保持するために、外部ストレージからボリュームをマウントすることができます。
Container Instances から Azure ファイル共有を、マウントする方法も提供されています。
Azure Files ボリュームをコンテナーグループにマウントする
パブリックIPアドレス
パブリックIPをコンテナに紐づけて、 Container Instances をインターネットに公開することもできます。
その他
以下の場合だと、Azure Kubernetes Service (AKS) というサービスが適しています。
- 複数コンテナー間でのサービスの検出、自動スケーリング
- アプリケーションの調整されたアップグレードなど
- コンテナーの完全なオーケストレーションが必要なシナリオ
料金
- インスタンスを起動した回数と、CPU・メモリ利用時間に対して課金されます
- インスタンスを1回起動するごとに0.26円
- メモリはGBあたり0.001275円、CPUはコアあたり0.001275円
1か月(30日)、毎日1回だけコアが1個、メモリが1GBのコンテナー・インスタンスを作成すると約30円です(安い!)。
まとめ
コンテナを簡単にすぐに立てられるので、コンテナを短時間だけ使いたい、というユースケースにはもってこいのサービスです。
アプリケーションの開発とトラブルシューティングを支援するために、対話型シェルを提供していて
実行中のコンテナーでのコマンドの実行もサポートしています。
開発作業や時間のコストを大幅に抑えることができるのは、非常にありがたいですね。
Azure で最も高速かつ簡単にコンテナーを実行する方法として、最適なのではないでしょうか。