From a7274f3869b3f72b067d3be89903befd04779387 Mon Sep 17 00:00:00 2001 From: Gene Liverman Date: Mon, 12 Jun 2017 15:19:25 -0700 Subject: [PATCH] Updated README with Vagrant info --- README.md | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/README.md b/README.md index 8dcbfbb69..3e95612f1 100644 --- a/README.md +++ b/README.md @@ -68,6 +68,49 @@ A [Dockerfile](Dockerfile) is included in this repository to allow running vmpoo docker build -t vmpooler . && docker run -e VMPOOLER_CONFIG -p 80:4567 -it vmpooler ``` +### Running Docker inside Vagrant + +A [Vagrantfile](Vagrantfile) is also included in this repository so that you dont have to run Docker on your local computer. +To use it run: + +``` +vagrant up +vagrant ssh +docker run -p 8080:4567 -v /vagrant/vmpooler.yaml.example:/var/lib/vmpooler/vmpooler.yaml -it --rm --name pooler vmpooler +``` + +To run vmpooler with the example dummy provider you can replace the above docker command with this: + +``` +docker run -e VMPOOLER_DEBUG=true -p 8080:4567 -v /vagrant/vmpooler.yaml.dummy-example:/var/lib/vmpooler/vmpooler.yaml -e VMPOOLER_LOG='/var/log/vmpooler/vmpooler.log' -it --rm --name pooler vmpooler +``` + +Either variation will allow you to access the dashboard from [localhost:8080](http://localhost:8080/). + +### Running directly in Vagrant + +You can also run vmpooler directly in the Vagrant box. To do so run this: + +``` +vagrant up +vagrant ssh +cd /vagrant + +# Do this if using the dummy provider +export VMPOOLER_DEBUG=true +cp vmpooler.yaml.dummy-example vmpooler.yaml + +# vmpooler needs a redis server. +sudo yum -y install redis +sudo systemctl start redis + +gem install bundler +bundle install +bundle exec ruby vmpooler +``` + +When run this way you can access vmpooler from your local computer via [localhost:4567](http://localhost:4567/). + ## API and Dashboard vmpooler provides an API and web front-end (dashboard) on port `:4567`. See the provided YAML configuration example, [vmpooler.yaml.example](vmpooler.yaml.example), to specify an alternative port to listen on.