A modern system requires access to multitude of development and production environments. Each environment has separate credentials, requirements and providers. Nebula is a virtual machine that creates & manages your development and production environments.
Key features are:
- Secure Secret Access: Secure secrets are stored in LastPass and retrieved via LastPass CLI.
- Otto: Otto is used for creating your dev environment and deploying it in production.
- Nebula creates virtual machines to separate each environment that Otto manages while providing access to your project directories in your own IDE (Integrated Debugging Environment).
- Vagrant
- VMWare Fusion Pro
- Vagrant license for Fusion
- Git
- LastPass account for storing secrets
Install vagrant plugins and fusion license:
$ vagrant plugin install vagrant-vmware-fusion
$ vagrant plugin license vagrant-vmware-fusion license.lic
Run the following commands to setup your virtual machine:
$ cd ~
$ mkdir ~/workspace
$ git clone https://github.com/pepperstack/nebula.git
$ cd nebula
$ vagrant up --provider vmware_fusion
Your virtual machine will be created with the default name of "eskimo" Nebula. Alternatively, you can edit the nebula_name variable in Vagrantfile for creating more nebulae.
Now ssh to your Nebula:
$ vagrant ssh <nebula-name>
You are ready to go through Otto Getting Started for developing and deploying your applications. Refer to What is Otto? for more information.