このページの内容

Awesome Vagrant

Vagrantを扱う資料や関連プロジェクトをまとめたAwesomeリストです。

公式リソース

Box

OS の Box はどこで見つかるでしょうか?

  • Vagrantbox.es - 利用可能なすべての Box を集めた最大のリストで、GitHub の Pull Request を通じてコミュニティが保守しています。
  • Vagrant Cloud - 設定の共有、Box の配布・検索を行います(非公開での共同作業と共有を行う有料機能もあります)。
  • Cloud Images Ubuntu.com - 「クリーン」な公式 Ubuntu Cloud Image です。
  • Opscode の Base Box - CentOS、Fedora、Debian、FreeBSD、Ubuntu です。
  • Puppet Labs Vagrant Boxes - さまざまな Puppet プロジェクトで使用するために提供される Box です。
  • Cloudsmith - Vagrant リポジトリなどに対応する、フルマネージドのパッケージ管理 SaaS です。

プロビジョニング

注目プラグイン

これらのモジュールは vagrant plugin install MODULE-NAME コマンドでインストールできます。

  • GitHub Wiki の利用可能な Vagrant プラグイン一覧
  • vagrant-vbguest - VirtualBox Guest Additions を VB のバージョンに合わせて自動更新します。
  • vagrant-hostsupdater - ホストシステムの /etc/hosts ファイルにエントリーを追加します。
  • vagrant-cachier - 似た VM Instance 間で共通のパッケージ(apt-get、npm など)キャッシュを共有します。
  • vagrant-host-shell - VM の起動時にホスト上でコマンドを実行する Vagrant Provisioner です。
  • vagrant-ansible-local Guest VM から直接 Ansible Playbook を使って VM をプロビジョニングできます。
  • sahara - VM の状態を簡単に管理します(ソフトウェアスタックを試しながら Commit/Rollback できます)。
  • vagrant-registration - Red Hat Enterprise Linux のようなサブスクリプションモデルのシステムで更新するため、Vagrant Guest に「register」と「unregister」機能を追加します。
  • vagrant-service-manager - Atomic Developer Bundle(ADB)が提供する機能とサービスへ簡単にアクセスできるようにします。
  • vagrant-scp - SCP 経由で Vagrant VM にファイルをコピーします。

ヘルパー/ツール

  • Packer - 単一のソース設定から複数プラットフォーム向けの同一 Machine Image を作成するツールです。複数 Provider に移植可能なインフラを迅速にデプロイできます。
  • T.A.D.S. boilerplate - Vagrant で本番環境をローカルに再現し、Docker Swarm 環境を作成、開発、デプロイするためのボイラープレートです。
  • Veewee - 独自の Vagrant Base Box、KVM、仮想 Machine Image を簡単かつ繰り返し構築するツールです。
  • ZSH Shell 用 Vagrant プラグイン - コマンド、タスク名、Box 名、組み込みドキュメントを自動補完します。
  • CLI Vagrant Manager - 複数の Vagrant Box を管理するシンプルなコマンドラインツールです。

デスクトップツール

Web サービス

自動プロビジョニングスクリプト付きの Vagrantfile を生成します。

  • Phansible - PHP ベースのプロジェクト向け Ansible Playbook の生成を支援する、使いやすいインターフェースです。
  • PuPHPet - PHP Web 開発用の仮想 Machine をセットアップするシンプルな GUI です。
  • Protobox - PuPHPet に似ていますが、仮想 Machine にインストールするすべてを制御するため、YAML 設定形式の独自インストーラーを使います。
  • Rove - 一般的な Vagrant ビルドをあらかじめ生成できるサービスです。

プロキシサービス

ローカル Web サーバーをプロキシし、インターネットへ公開します。

  • Vagrant Share - Vagrant 環境を世界中の誰とでも共有できます。
  • nip.io - 任意の IP アドレスにワイルドカード DNS を提供する魔法のようなドメイン名です。
  • ngrok - NAT や Firewall の内側にあるローカルサーバーをインターネットへ公開する安全な Tunnel を作成します。
  • serveo - クライアントをインストールせず、ローカルサーバーをインターネットへ公開します!
  • proxylocal.com - ローカル Web サーバーをプロキシしてインターネットへ公開します。
  • localtunnel.me - ローカルで動作する Web サーバーへのすべてのリクエストをプロキシする、一意で公開アクセス可能な URL を割り当てます。
  • portmap.io - OpenVPN ベースの無料 Port Forwarding ソリューションです。

チュートリアル

書籍

人気の構築済み環境

  • Vagrantpress - WordPress サイトを作成・変更するための開発環境です。
  • Varying Vagrant Vagrants - WordPress 開発に重点を置いたオープンソース Vagrant 設定です。
  • Joomla-Vagrant
  • VDD - Vagrant Drupal Development です。
  • Drupal VM - Vagrant + Ansible で構築された、ローカル Drupal 開発用 VM です。
  • Try Yii2 - Vagrant VM + Ansible Provisioning で Yii2 を試せる、完成済みの仮想 Server Playground です。
  • Laravel4-Vagrant - PHP 5.5 を備えた Ubuntu 12.04 Vagrant Virtual Machine 内で Laravel 4 を実行します。
  • Vagrant 上の Ansible による OpenStack
  • Laravel Homestead - Ubuntu 16.04 LTS、PHP 7、Nginx、複数のデータベースプラットフォームを基にした、Laravel 開発用の公式 Vagrant Box です。
  • Scotch Box - Ubuntu 14.04 LTS を基に、LAMP Stack と便利な追加機能を備えたシンプルな Vagrant Box です。

ライセンス

CC0

法律で認められる範囲で、Ievgen Kuzminov はこの作品に関するすべての著作権および関連する権利または隣接する権利を放棄しています。