项目作者: beetboxvm

项目描述 :
Pre-provisioned L*MP stack
高级语言: Shell
项目地址: git://github.com/beetboxvm/beetbox.git
创建时间: 2015-11-29T22:13:20Z
项目社区:https://github.com/beetboxvm/beetbox

开源协议:

下载


Beetbox - a pre-provisioned L*MP stack

A VM for local L*MP development, built with Packer, Vagrant + Ansible

Beetbox is essentially a pre-provisioned version of Drupal VM mainly to speed up initial virtual machine build time, but also to reduce the size of each VM by leveraging linked clones.

Whilst it contains a set of default feature configuration, it is extremely extensible and almost anything can be overridden/extended with a simple YAML config file.

It is designed to have an instance (VM) per project and be integrated into a VCS like git, so that configuration can be easily shared within a team and a setup of a new project should be as simple as git clone ...; vagrant up.

This particular project contains the plumbing to manage the automated build of the pre-provisioned Vagrant base box, so almost all functionality is provided by ansible roles external to this project.

Circle CI Documentation Status
Latest Stable Version
Total Downloads
License
Docker

What’s different about this project?

  • It’s a composer plugin which automatically creates a Vagrantfile.
  • You only add config to your project and don’t need to manage a fork of the whole provisioning system.
  • It uses a pre-provisioned base box so it’s much faster to provision.
  • Each new version of the box gets published to Atlas only if all roles are provisioned making the box always stable.
  • With linked clones each VM is a small clone of a single master.
  • You can reuse the same provisioning system for a CI environment.
  • Minimal host machine dependencies.

Requirements

Quickstart

  1. composer require --dev beet/box
  2. vagrant up

This will automatically generate a Vagrantfile and the .beetbox directory, which will contain a config.yml file used to configure overrides.

You can see some examples in config.yml

Updating

  1. composer update beet/box

Version constraints should automatically keep you to the same minor release. (0.0.x)
However, you may need to update your configuation when upgrading minor releases. (0.x.0)
See the release notes for more information.

Drupal Quickstart

To get a simple Drupal 8 site up and running with Beetbox, run the following commands:

  1. composer create-project drupal-composer/drupal-project:8.x-dev drupal8 --stability dev --no-interaction
  2. cd drupal8
  3. composer require --dev beet/box
  4. vagrant up

After which you can install the site at http://drupal8.local/install.php

or add the following to ./.beetbox/config.yml and run vagrant provision to automatically install drupal:

  1. drupal_install_site: yes
  2. drupal_account_name: admin
  3. drupal_account_pass: admin

For PHP 5.6 add php_version: "5.6" to ./.beetbox/config.yml, then run vagrant provision.

Project roles.

These roles are mantained by Beetbox team.

Project Build status
Backdrop Circle CI
Drupal CircleCI
Kohana CircleCI
Modx CircleCI
Silverstripe CircleCI
Slim CircleCI
Symfony Circle CI
Wordpress CircleCI

Documentation

http://beetbox.readthedocs.io/en/latest/

Contributing

http://beetbox.readthedocs.io/en/latest/contributing/contributing/

Support

Credits

This project would not be possible without geerlingguy’s awesome Ansible roles from Drupal VM.
We encourage you to support him by buying his book Ansible for DevOps.

JetBrains generously offer an Open source licence.

Beetbox is primarily maintained by the Drupal Melbourne (Australia) community.

Please follow @beetboxvm for announcements.

License

This project is licensed under the MIT open source license.