feat(Vagrantfile): Add Vagrantfile for easy start

release-0.4
Slawosz Slawinski 2014-03-13 17:40:04 +01:00 committed by Brandon Philips
parent 79e4c838f4
commit 838a945862
4 changed files with 44 additions and 0 deletions

1
.gitignore vendored
View File

@ -3,3 +3,4 @@
/machine*
/bin
/src
.vagrant

View File

@ -0,0 +1,12 @@
# Development tools
## Vagrant
For fast start you can use Vagrant. `vagrant up` will make etcd build and running on virtual machine. Required Vagrant version is 1.5.0.
Next lets set a single key and then retrieve it:
```
curl -L http://127.0.0.1:4001/v2/keys/mykey -XPUT -d value="this is awesome"
curl -L http://127.0.0.1:4001/v2/keys/mykey
```

View File

@ -45,6 +45,10 @@ _NOTE_: you need go 1.2+. Please check your installation with
go version
```
See the [development tools documentation][development-tools.md] for alternative build methods like using Vagrant.
[development-tools.md]: https://github.com/coreos/etcd/blob/master/Documentation/development-tools.md
### Running
First start a single machine cluster of etcd:

27
Vagrantfile vendored Normal file
View File

@ -0,0 +1,27 @@
# -*- mode: ruby -*-
# vi: set ft=ruby :
#
Vagrant.require_version '>= 1.5.0'
Vagrant.configure("2") do |config|
config.vm.box = "precise64"
config.vm.box_url = "http://files.vagrantup.com/precise64.box"
config.vm.network :forwarded_port, host: 4001, guest: 4001
config.vm.network :forwarded_port, host: 7001, guest: 7001
# Fix docker not being able to resolve private registry in VirtualBox
config.vm.provider :virtualbox do |vb, override|
vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
vb.customize ["modifyvm", :id, "--natdnsproxy1", "on"]
end
config.vm.provision "docker" do |d|
d.build_image "/vagrant", args: '-t etcd'
d.run "etcd", args: "-p 4001:4001 -p 7001:7001", demonize: true
end
# plugin conflict
if Vagrant.has_plugin?("vagrant-vbguest")
config.vbguest.auto_update = false
end
end