目次
Docker Machine は様々なクラウド・プラットフォームに対応したプラグインを扱えます。このプラグインに対応したドライバを使えば、Docker Machine でクラウド・ホストを自動作成します。そして、作成するホスト上に Docker Engine も自動インストールできます。
必要になるのは Docker Machine のインストール・実行と、利用するクラウド・プロバイダ上でのアカウント作成です。
次にアカウント証明書、セキュリティ証明書など、 docker-machine create コマンドのオプション用フラグで必要なものを確認します。例えば、 Digital Ocean のアクセス・トークンを指定するには --digitalocean-access_token フラグを使います。以降のページでは Digital Ocean と AWS の設定例を見ていきます。
次のコマンドは Digital Ocean 上に「docker-sandbox」という名前のドロップレット(クラウド・ホスト)を作成します。
$ docker-machine create --driver digitalocean --digitalocean-access-token xxxxx docker-sandboxMachine を使い、Digital Ocean 上のホストで更なる操作をするには :doc:`Digital Ocean サンプル </machine/examples/ocean>` をご覧ください。
次のコマンドは AWS EC2 上に「aws-sandbox」という名前のドロップレット(クラウド・ホスト)を作成します。
$ docker-machine create --driver amazonec2 --amazonec2-access-key AKI******* --amazonec2-secret-key 8T93C******* aws-sandboxMachine を使い、AWS 上の Docker 対応インスタンスで更なる操作をするには :doc:`Amazon Web Services (AWS) サンプル </machine/examples/aws>` をご覧ください。
docker-machine create コマンドの実行時、いくつか最小限の指定が必要となります。
--driverで、マシンを作成するプロバイダを明示します( VirtualBox 、 Digital Ocean 、 AWS 、等)。
- クラウド・サービスを使う場合は、(クラウド・プロバイダの)アカウント証明書やセキュリティ証明書の指定。
<マシン名>で作成したいホスト名。
扱いやすいように、 docker-machine でサーバ作成時に一般的なオプションがデフォルトで適用されます。しかし、これらのデフォルト値はフラグを使って上書きできます(例: --digitalocean-image )。そのため、クラウド・サーバに多くのメモリや CPU を割り当てたい場合には便利でしょう(デフォルトの docker-machine は小さなサーバを作成します)。
デフォルトの値、あるいは利用可能なフラグや設定を全て確認したい場合は、コマンドラインで docker-machine create -h を使います。他にも、Machine :doc:`コマンドライン・リファレンス </machine/reference/index>` の :doc:`create </machine/reference/create>` コマンドや、Machine ドライバ・リファレンスの :doc:`/machine/drivers/os-base` をご覧ください。
Docker Machine をインストーしたら、様々なクラウド・プロバイダに対応したドライバ(Amazon Web Services 、 Digital Ocean 、 Microsoft Azure 等)と、ローカルのプロバイダ(Oracle VirtualBox 、VMware Fusion 、Microsoft Hyper-V)が利用可能になります。
各ドライバの詳細は :doc:`Docker Machine ドライバ・リファレンス </machine/drivers/index>` から、必要なフラグや設定オプション(プロバイダごとにかなり違います)をご確認ください。
サード・パーティの貢献者による様々なクラウド・プラットフォームに対応した Docker Machine プラグインがあります。これらのプラグイン利用にあたっては、利用者の皆さん自身でリスクを取ってください。Docker によって直接メンテナンスされているものではありません。
使うには、GItHub の docker/machine リポジトリ上の 利用可能なドライバ・プラグイン をご覧ください。
Docker の場所を指定したら、ドライバがないホストの追加が可能です。既存のホストに関するマシン名を指定することにより、Docker コマンド使用時に毎回オプションを指定する必要がなくなります。
$ docker-machine create --url=tcp://50.134.234.20:2376 custombox
$ docker-machine ls
NAME ACTIVE DRIVER STATE URL
custombox * none Running tcp://50.134.234.20:2376Docker Machine を使えば :doc:`Docker Swarm </swarm/overview>` クラスタのプロビジョンもできます。どのドライバを使っても TLS で安全にします。
- Swarm を使うには :doc:`/swarm/get-swarm` をご覧ください。
- Machine で Swarm クラスタを構築する方法は :doc:`/swarm/provision-with-machine` をご覧ください。
- サンプル: Docker 対応の :doc:`Digital Ocean ドロップレット </machine/examples/ocean>` をプロビジョニング
- サンプル: Docker 対応の :doc:`AWS EC2 インスタンス </machine/examples/aws>` をプロビジョニング
- :doc:`concepts`
- :doc:`Docker Machine ドライバ・リファレンス </machine/drivers/index>`
- :doc:`Docker Machine サブコマンド・リファレンス </machine/reference/index>`
- :doc:`/swarm/provision-with-machine`
.. seealso::
Use Docker Machine to provision hosts on cloud providers
https://docs.docker.com/machine/get-started-cloud/