-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathdocker-compose.yml
157 lines (149 loc) · 4 KB
/
docker-compose.yml
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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
version: "3"
services:
zookeeper:
image: zookeeper:3.4.11
hostname: zookeeper
networks:
mesos_command_modules_net:
ipv4_address: 172.16.130.2
mesos-master:
image: mesosphere/mesos-master:1.6.0-rc1
privileged: true
hostname: localhost
ports:
- "5050:5050"
networks:
mesos_command_modules_net:
ipv4_address: 172.16.130.3
links:
- zookeeper
depends_on:
- zookeeper
environment:
MESOS_ZK: zk://zookeeper:2181/mesos
MESOS_QUORUM: 1
MESOS_CLUSTER: docker-compose
MESOS_HOSTNAME: localhost
MESOS_WORK_DIR: /var/tmp/mesos
MESOS_LOG_DIR: /var/log/mesos
LIBPROCESS_IP: 172.16.130.3
mesos-slave:
build:
context: tests/resources
dockerfile: Dockerfile.slave
privileged: true
hostname: localhost
entrypoint: "mesos-agent"
ports:
- "5051:5051"
networks:
mesos_command_modules_net:
ipv4_address: 172.16.130.4
links:
- zookeeper:zookeeper
- mesos-master:master.mesos
depends_on:
- zookeeper
- mesos-master
environment:
MESOS_MASTER: zk://zookeeper:2181/mesos
MESOS_CONTAINERIZERS: mesos,docker
MESOS_PORT: 5051
MESOS_RESOURCES: ports(*):[11000-11999]
MESOS_HOSTNAME: localhost
MESOS_WORK_DIR: /var/tmp/mesos
MESOS_LOG_DIR: /var/log/mesos
MESOS_SYSTEMD_ENABLE_SUPPORT: "false"
MESOS_FRAMEWORKS_HOME: /var/tmp/mesos/frameworks
MESOS_IMAGE_PROVIDERS: docker
MESOS_ISOLATION: filesystem/linux,docker/runtime
MESOS_AUTHENTICATE_HTTP_READWRITE: "true"
MESOS_AUTHENTICATE_HTTP_EXECUTORS: "true"
MESOS_HTTP_CREDENTIALS: /etc/mesos/agent_credential
MESOS_JWT_SECRET_KEY: /etc/mesos/secret_key
LIBPROCESS_IP: 172.16.130.4
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./tests/resources/agent_credential:/etc/mesos/agent_credential
- ./tests/resources/secret_key:/etc/mesos/secret_key
marathon:
image: mesosphere/marathon:v1.5.6
entrypoint:
- ./bin/start
- --disable_ha
- --logging_level
- info
hostname: localhost
ports:
- "8080:8080"
networks:
mesos_command_modules_net:
ipv4_address: 172.16.130.5
links:
- zookeeper
- mesos-master
depends_on:
- zookeeper
- mesos-master
- mesos-slave
environment:
- MARATHON_ZK=zk://zookeeper:2181/marathon
- MARATHON_MASTER=zk://zookeeper:2181/mesos
- LIBPROCESS_IP=172.16.130.5
openldap:
image: clems4ever/openldap
ports:
- "389:389"
networks:
mesos_command_modules_net:
ipv4_address: 172.16.130.6
environment:
- SLAPD_ORGANISATION=MyCompany
- SLAPD_DOMAIN=example.com
- SLAPD_PASSWORD=password
- SLAPD_CONFIG_PASSWORD=password
- SLAPD_ADDITIONAL_MODULES=memberof
- SLAPD_ADDITIONAL_SCHEMAS=openldap
- SLAPD_FORCE_RECONFIGURE=true
mesos-term:
build:
context: .
dockerfile: Dockerfile.build
ports:
- "3000:3000"
environment:
- HOST=0.0.0.0
- MESOS_TERM_COMMAND=/bin/bash
- MESOS_TERM_SESSION_SECRET=supersecret
- MESOS_TERM_JWT_SECRET=superjwt
- MESOS_TERM_MESOS_MASTER_URL=http://mesos-master:5050
- MESOS_TERM_MESOS_STATE_CACHE_TIME=1
- MESOS_TERM_NODE_ENV=production
- MESOS_TERM_MESOS_AGENT_PRINCIPAL=admin
- MESOS_TERM_MESOS_AGENT_PASSWORD=password
networks:
mesos_command_modules_net:
ipv4_address: 172.16.130.7
links:
- mesos-master
- openldap
depends_on:
- mesos-master
- openldap
openldap-admin:
image: osixia/phpldapadmin:0.6.11
ports:
- 9090:80
environment:
- PHPLDAPADMIN_LDAP_HOSTS=openldap
- PHPLDAPADMIN_HTTPS=false
networks:
mesos_command_modules_net:
ipv4_address: 172.16.130.12
networks:
mesos_command_modules_net:
driver: bridge
ipam:
driver: default
config:
- subnet: 172.16.130.0/24