You'll need Vagrant and preferably VMWare Fusion Professional. If you don't already have this, Bowery will get it for you.
Bowery is comprised of a command line interface, api, remote agent, and an account management system. This will change over time.
At the moment, Bowery uses Vagrant to set up three (3) virtual machines; one to run the API, another to host the containers, and a third to run the account manager.
You should place all of these repositories in $GOPATH/src/github.com/Bowery
.
Within that directory, clone our Vagrantfile and run:
$ vagrant up --parallel --provider=vmware_fusion
This will take some time...
You'll need Go installed on your machine
$ cd $GOPATH/src/github.com/Bowery/SkyLab/cli
$ go get
You can now access the CLI globally. To connect to the API we'll be running:
$ ENV=development DEBUG=cli HOST=10.0.0.15 cli
$ vagrant ssh api
$ cd api
$ npm install
$ ENV=development HOST=10.0.0.15 node app.js
There are two components of the remote agent:
- Delancey
- Monitor
Delancey is run within a docker container to let us sync files and manage our services remotely.
This is (apologies) a bit gross for now...
$ vagrant ssh dockerd
$ cd delancey
$ go get -d && go build
$ mv delancey satellite
$ cp -f satellite ../images/bowery/
$ cp -rf images/bowery/* /satellite/
$ chown vagrant:vagrant /satellite/satellite
Monitor is run on the machine to let the api know if docker is running as expected, as well as how much memory/disk is available.
$ cd monitor
$ go get
$ ENV=development API=10.0.0.15 HOST=10.0.0.12 monitor
todo