eji著

主にプログラミングや山登りの話などを書いていく予定

VagrantでDockerを使う方法のメモ

VagrantでDockerを使ったことがなかったので軽く調べてみた。以下自分用のメモ

VagrantでDockerを使う方法

VagrantでDockerを使う方法は2種類ある。

  1. Provisioner
  2. Provider

Provisioner

Vagrant 1.4 から provisioner として docker が追加された。

これはVirtualBoxVMWare等にインストールしたVM(このVMは、CoreOSやCentOSなどconfig.vm.boxに指定してインストールしたOS)にdockerを入れるためのもの。

この方法は以下の利点と欠点がある。

  • 利点
    • 自分の好きなOSをDockerのホストにできる(ただこれはあまり嬉しくない気がする)
  • 欠点
    • マシンのリソースを食う(プロジェクトごとにVMを立ち上げることになるため、メモリやCPUを食う(はず))

Provider

Vagrant 1.6 から docker が provider として加わった。

この方法は以下の利点と欠点がある。

  • 利点
    • マシンのリソースを食わない(プロジェクトごとにコンテナを動かしてもVagrantがホストを提供してくれるので動くVMは1個だけ(のはず))
    • Dockerコンテナでコマンドを実行する方法が用意されている
    • Provisinerと比較して立ち上げが速い(はず)
  • 欠点
    • Provisionerと比較して欠点は見当たらなかった

まとめ

VagrantでDockerを使う方法を調べたらProvider使っている記事やProvisioner使っている記事があって、結局どっち使うのが良いのか分からなかったので調べて簡単にまとめてみた。

どちらもそんなに大きく変わらないから使いやすそうな方で良い気がするけど、自分はPCを外で使うことが多いからリソースを食わないProviderの方が向いているなと思った(ただしリソースの使用率をはかった訳じゃないから間違っている可能性ある)

って書いておきながらまだDocker入れてない。今いる場所のWiFi環境がひど過ぎて(環境しまくりでブチブチ切れる)Dockerどころじゃない。。。