Docker Machineのメモ
2015/11/07
随時追記する
Contents
Docker Machineとは
Virtualboxで何かしらのOSをインストールしたVM作って、sshでVMに入って、Dockerをインストールして、dockerする。
みたいなことを普通はやる。
あるホスト上にあるDocker操作をローカルの端末からできたら楽だよね。
って、ことでDocker Machineが作られた。
DockerMachine以前、Macの場合はboot2dockerってのがそれらしいことをしていた。
VirtualboxだけじゃなくてDigitalOceanやEC2なんかにも対応してる。便利。
VirtualBox上にdevという名のホストを作る
1 2 |
docker-machine create -d virtualbox dev docker-machine ls |
devというホストができてるはず。
EC2のホストを作る
docker machineの1.3.0からスポットインスタンス使用の有無を指定できるようになった。
GPUインスタンスをスポットインスタンスで使いたかったので嬉しい。
1 |
docker-machine create -d amazonec2 --amazonec2-access-key [ACCESSKEY] --amazonec2-secret-key [SECRET_KEY] --amazonec2-ami ami-XXXXXXXX --amazonec2-vpc-id vpc-XXXXXXXX --amazonec2-request-spot-instance true --amazonec2-spot-price 0.07 --amazonec2-instance-type g2.2xlarge ec2 |
困ってること:一度作ったホストをrmで削除して再度↑のコマンドでホストを作ろうとすると
1 2 3 4 5 6 7 8 9 10 11 |
Making AWS API call with values: { "Action": [ "DescribeKeyPairs" ], "Version": [ "2014-06-15" ] } Error creating machine: There is already a keypair with the name true. Please either remove that keypair or use a different machine name. You will want to check the provider to make sure the machine and associated resources were properly removed. |
こんなエラーが発生して相当困ってる。
keypairを削除するか、ホスト名を重複しないようにするとい良いらしいけど、keypairどこで消せるんだろう。。
EC2 Container Serviceの方がいいのかなー。
DigitalOceanのホストを作る
1 |
docker-machine create --driver digitalocean --digitalocean-access-token [YOUR_ACCESS_TOKEN] [ANY_MACHINE_NAME] |
アクセストークンはDigitalOceanのヘッダータブにある『API』から生成できる。
一度生成したアクセストークンは見れなくるので、メモするなりしておくこと。
任意のサーバー上でDockerホストを作る
対象サーバーにsshできることが必須。
Genericというdriverを使えばできる。
こんな感じ。
1 |
docker-machine create -d generic --generic-ip-address awesome.com --generic-ssh-user deployer awesome |
activeコマンドが使えなくなった
0.3.0から消滅したみたい。
まあ、リリースノート読めって話だけどね。ごめんね。
devという名前のマシンをactiveにしたいなら下記のようなコマンドを実行すればOK。
1 |
eval $(docker-machine env dev) |
336px
336px
関連記事
-
-
AndroidのHandlerって何?
Ha …
-
-
Docker導入したらどうするの?
Do …
-
-
プログラミング入門以前
これ …
-
-
DockerでRedmineしたい
Co …
-
-
FlutterでListViewしたい
こん …