LoginSignup
9
11

More than 5 years have passed since last update.

VagrantとDockerの使い分けについてまとめてみた

Last updated at Posted at 2018-09-04

Vagrantで実装する利点

  • 素直な仮想マシン
    • 中身はVirtualBOXの仮想マシン
    • 実機で操作する感覚で対応できる
  • 複数サービスを一手に管理
    • 起動時、複数のサービスを同時に立ち上げられる
    • サービスだけ再起動でき(OSの再起動不要)、他のサービスに影響が出ない(依存関係に依る)
    • docker-composeを使えばいいじゃんと意見もあるが、サービスの再起動に結局マシンを再起動するのと同じくらいの時間がかかってしまう
  • 開発時には心強い
    • 特に、複数のサービスを組み合わせる or その間に自分で開発したサービスやアプリを組み込む時
    • dockerは手軽だが、1サービス1コンテナという成約があり、さらに自動的に起動したサービスが停止するとコンテナごと止まる弱点がある
      • サービスの再起動にコンテナ再起動と同じ時間がかかる
      • Vagrantならサービスだけ再起動できる
  • 実機へのデプロイを実験するならこちらが便利

Dockerで実装する利点

  • 手軽
  • 複数サーバを同時に立ち上げる感覚で操作できる
    • docker-composeを使えばなおさら
  • サービスを立ち上げるのに最適化されている
  • 本番環境で管理しやすい
  • 同じポート番号を扱うサービスを複数抱えているなら検討の価値ある

VagrantとDockerの使い分け

  • 開発時はVagrantで行い、本番環境ではdockerでデプロイ
    • デプロイ先がDocker対応してるなら
  • 同じポートを利用するサービスが複数あるならDockerでの開発も検討
  • 実機へのデプロイのときはVagrantが便利
9
11
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
11