forked from William-Yeh/docker-workshop
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathVagrantfile
99 lines (63 loc) · 2.84 KB
/
Vagrantfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
VAGRANTFILE_API_VERSION = "2"
Vagrant.require_version ">= 1.7.2"
# expose ports from guest to host for convenience
FORWARDED_PORT_RANGE = 10080..10100
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.define "main", primary: true do |node|
node.vm.box = "williamyeh/ubuntu-trusty64-docker"
node.vm.box_version = ">= 1.4.1.3"
node.vm.network "private_network", ip: "10.0.0.10"
node.vm.provision "hosts" do |hosts|
hosts.add_host '10.0.0.200', ['registry.com', 'registry']
end
for i in FORWARDED_PORT_RANGE
node.vm.network "forwarded_port", guest: i, host: i
end
node.vm.provision "shell", path: "provision/setup-docker-tools.sh"
node.vm.provision "shell", path: "provision/setup-env.sh"
node.vm.provider "virtualbox" do |vb|
vb.customize ["modifyvm", :id, "--memory", "2048"]
end
end
config.vm.define "alice" do |node|
node.vm.box = "williamyeh/ubuntu-trusty64-docker"
node.vm.box_version = ">= 1.4.1.3"
node.vm.network "private_network", ip: "10.0.0.11"
node.vm.provision "hosts" do |hosts|
hosts.add_host '10.0.0.200', ['registry.com', 'registry']
end
node.vm.provision "shell", path: "provision/setup-docker-tools.sh"
node.vm.provision "shell", path: "provision/setup-env.sh"
end
config.vm.define "bob" do |node|
node.vm.box = "williamyeh/ubuntu-trusty64-docker"
node.vm.box_version = ">= 1.4.1.3"
node.vm.network "private_network", ip: "10.0.0.12"
node.vm.provision "hosts" do |hosts|
hosts.add_host '10.0.0.200', ['registry.com', 'registry']
end
node.vm.provision "shell", path: "provision/setup-docker-tools.sh"
node.vm.provision "shell", path: "provision/setup-env.sh"
end
config.vm.define "centos" do |node|
node.vm.box = "chef/centos-5.11"
node.vm.network "private_network", ip: "10.0.0.30"
# [NOTE] unmark this while benchmarking VM startup time
#node.vm.box_check_update = false
node.vm.provider "virtualbox" do |vb|
vb.customize ["modifyvm", :id, "--memory", "256"]
end
end
config.vm.define "registry" do |node|
node.vm.box = "williamyeh/insecure-registry"
node.vm.box_version = ">= 1.4.1.3"
node.vm.network "private_network", ip: "10.0.0.200"
node.vm.provision "hosts" do |hosts|
hosts.add_host '10.0.0.200', ['registry.com', 'registry']
end
node.vm.provision "shell", path: "provision/setup-docker-tools.sh"
node.vm.provision "shell", path: "provision/setup-env.sh"
node.vm.provision "shell",
inline: "PRIVATE_DOCKER_REGISTRY=registry.com docker-mirror /vagrant/provision/IMAGE-LIST"
end
end