-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
88 lines (76 loc) · 2.19 KB
/
Copy pathdocker-compose.yml
File metadata and controls
88 lines (76 loc) · 2.19 KB
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
---
# USAGE:
# - bring everything up with `docker-compose --x-networking --x-network-driver=overlay -d up`
# - monitor logs, consul cluster should eventually sync, then if necessary restart vault instances
# - `VAULT_ADDR=http://accessible-ip:8200 vault init | tee /tmp/vault.keys`
# - `VAULT_ADDR=http://accessible-ip:8200 vault $key1` etc
# WARN: re-baking a consul cluster may require a `for host in a b c ; do docker-machine ssh $host "rm -rf /var/consul" ; done`
consul0:
container_name: consul0
hostname: consul0
image: acker/consul
net: ${COMPOSE_PROJECT_NAME}
restart: always
#volumes:
# - "/var/consul:/data"
environment:
- "constraint:node==ucp0"
- "CONSUL_SERVERS=consul0,consul1,consul2"
#ports:
# - "8500:8500"
command: -server -bootstrap-expect=3 -log-level=${CONSUL_LOG} -config-file=/config/server.json -ui-dir=/ui
consul1:
container_name: consul1
hostname: consul1
image: acker/consul
net: ${COMPOSE_PROJECT_NAME}
restart: always
#volumes:
# - "/var/consul:/data"
environment:
- "constraint:node==ucp1"
- "CONSUL_SERVERS=consul0,consul1,consul2"
#ports:
# - "8500:8500"
command: -server -bootstrap-expect=3 -log-level=${CONSUL_LOG} -config-file=/config/server.json -ui-dir=/ui
consul2:
container_name: consul2
hostname: consul2
image: acker/consul
net: ${COMPOSE_PROJECT_NAME}
restart: always
#volumes:
# - "/var/consul:/data"
environment:
- "constraint:node==ucp2"
- "CONSUL_SERVERS=consul0,consul1,consul2"
#ports:
# - "8500:8500"
command: -server -bootstrap-expect=3 -log-level=${CONSUL_LOG} -config-file=/config/server.json -ui-dir=/ui
vault0:
container_name: vault0
image: acker/vault
net: ${COMPOSE_PROJECT_NAME}
restart: always
cap_add:
- IPC_LOCK
environment:
- "constraint:node==ucp0"
- "CONSUL_SERVERS=consul0,consul1,consul2"
vault1:
container_name: vault1
image: acker/vault
net: ${COMPOSE_PROJECT_NAME}
restart: always
cap_add:
- IPC_LOCK
environment:
- "constraint:node==ucp1"
- "CONSUL_SERVERS=consul0,consul1,consul2"
nginx:
build: ./nginx
container_name: nginx-vault
net: ${COMPOSE_PROJECT_NAME}
restart: always
ports:
- "8200:80"