mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
0b458d70ce
14.10 reached EOL recently and hence experimental builds are not built for that distro any more. Upgrading it to 15.04 means handling the systemd specific docker daemon configs required for multi-host networking. Signed-off-by: Madhu Venugopal <madhu@docker.com>
58 lines
1.9 KiB
Ruby
58 lines
1.9 KiB
Ruby
# -*- mode: ruby -*-
|
|
# vi: set ft=ruby :
|
|
|
|
# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
|
|
VAGRANTFILE_API_VERSION = "2"
|
|
|
|
$consul=<<SCRIPT
|
|
apt-get update
|
|
apt-get -y install wget
|
|
wget -qO- https://experimental.docker.com/ | sh
|
|
gpasswd -a vagrant docker
|
|
service docker restart
|
|
docker run -d -p 8500:8500 -p 8300-8302:8300-8302/tcp -p 8300-8302:8300-8302/udp -h consul progrium/consul -server -bootstrap
|
|
SCRIPT
|
|
|
|
$bootstrap=<<SCRIPT
|
|
apt-get update
|
|
apt-get -y install wget curl
|
|
apt-get -y install bridge-utils
|
|
wget -qO- https://experimental.docker.com/ | sh
|
|
gpasswd -a vagrant docker
|
|
echo DOCKER_OPTS=\\"--default-network=overlay:multihost --kv-store=consul:192.168.33.10:8500 --label=com.docker.network.driver.overlay.bind_interface=eth1 --label=com.docker.network.driver.overlay.neighbor_ip=192.168.33.11\\" >> /etc/default/docker
|
|
cp /vagrant/vagrant-systemd/docker.service /etc/systemd/system/
|
|
systemctl daemon-reload
|
|
systemctl restart docker.service
|
|
SCRIPT
|
|
|
|
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
|
|
config.ssh.shell = "bash -c 'BASH_ENV=/etc/profile exec bash'"
|
|
num_nodes = 2
|
|
base_ip = "192.168.33."
|
|
net_ips = num_nodes.times.collect { |n| base_ip + "#{n+11}" }
|
|
|
|
config.vm.define "consul-server" do |consul|
|
|
consul.vm.box = "ubuntu/trusty64"
|
|
consul.vm.hostname = "consul-server"
|
|
consul.vm.network :private_network, ip: "192.168.33.10"
|
|
consul.vm.provider "virtualbox" do |vb|
|
|
vb.customize ["modifyvm", :id, "--memory", "512"]
|
|
end
|
|
consul.vm.provision :shell, inline: $consul
|
|
end
|
|
|
|
num_nodes.times do |n|
|
|
config.vm.define "net-#{n+1}" do |net|
|
|
net.vm.box = "ubuntu/vivid64"
|
|
net_ip = net_ips[n]
|
|
net_index = n+1
|
|
net.vm.hostname = "net-#{net_index}"
|
|
net.vm.provider "virtualbox" do |vb|
|
|
vb.customize ["modifyvm", :id, "--memory", "1024"]
|
|
end
|
|
net.vm.network :private_network, ip: "#{net_ip}"
|
|
net.vm.provision :shell, inline: $bootstrap
|
|
end
|
|
end
|
|
|
|
end
|