Giter Club home page Giter Club logo

vagrant-scaffold's Introduction

Vagrant Scaffold

A starter kit for provisioning a development server using Vagrant and Ansible.

Stack

The server will feature the following development environment:

Requirements

The following programs must be install on your machine before you may install.

  • Vagrant 2.0.x

    export VAGRANT_RELEASES="https://releases.hashicorp.com/vagrant"
    export VAGRANT_VERSION="2.0.1"
    export VAGRANT_DEB="vagrant_${VAGRANT_VERSION}_x86_64.deb"
    curl -O "${VAGRANT_RELEASES}/${VAGRANT_VERSION}/${VAGRANT_DEB}"
    sudo dpkg -i ${VAGRANT_DEB}
    rm ${VAGRANT_DEB}
  • VirtualBox 5.2.x

    export VBOX_PATH="http://download.virtualbox.org/virtualbox/debian"
    wget -q -O- ${VBOX_PATH}/oracle_vbox_2016.asc | sudo apt-key add -
    echo "deb ${VBOX_PATH} $(lsb_release -cs) contrib" | sudo tee /etc/apt/sources.list.d/virtualbox.list
    sudo apt-get update
    sudo apt-get install virtualbox-5.2
  • Ansible 2.4.x

    sudo add-apt-repository -y ppa:ansible/ansible
    sudo apt-get update
    sudo apt-get install -y ansible

How To Install

1. Clone the project repo:

git clone https://github.com/jabes/vagrant-scaffold.git
cd vagrant-scaffold

2. Copy the Ansible key into the vault:

IMPORTANT: The key below is for the localhost environment only. Make sure that you use a different secret key for production environments.

mkdir -p ~/.ansible-vault
echo "SuperSecretPassword" > ~/.ansible-vault/vagrant-scaffold

You can now view secret info using Ansible vault commands:

cd ansible
ansible-vault view inventories/local/group_vars/secrets.yml
ansible-vault decrypt inventories/local/group_vars/secrets.yml
ansible-vault encrypt inventories/local/group_vars/secrets.yml

3. Fetch required Ansible packages:

cd ansible
ansible-galaxy install -r requirements.yml

4. Download and provision the server:

NOTE: The boxes are pretty large and provisioning can take a while. This is a good time to take a coffee break.

vagrant plugin install vagrant-vbguest
vagrant plugin install vagrant-hostsupdater
vagrant up

If everything went well..

vagrant-scaffold's People

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.