-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yml
133 lines (131 loc) · 2.93 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
services:
redqueen-web:
image: mlehner/foundry:redqueen-web
restart: unless-stopped
depends_on:
- redqueen-api
logging: &default-logging
driver: local
options:
max-size: 10m
max-file: 2
networks:
- api
- proxy
build:
context: web/
ports:
- "80:80"
develop:
watch:
- action: sync
path: ../redqueen-js-app/web
target: /redqueen/web
redqueen-api:
image: mlehner/foundry:redqueen-api
logging: *default-logging
restart: unless-stopped
depends_on:
- mysql
environment:
- REDQUEEN_DB_URL=mysql://${REDQUEEN_DB_USER}:${REDQUEEN_DB_PASS}@mysql/${REDQUEEN_DATABASE}?charset=utf8
- REDQUEEN_LOG_DB_URL=mysql://${REDQUEEN_DB_USER}:${REDQUEEN_DB_PASS}@mysql/${REDQUEEN_DATABASE}?charset=utf8
- REDQUEEN_JWT_DISABLED
- REDQUEEN_JWT_KEYSET_URL
- REDQUEEN_JWT_AUDIENCE
- REDQUEEN_JWT_ISSUER
networks:
- api
- mysql
build:
context: php-api/
develop:
watch:
- action: sync
path: ../redqueen-php-api
target: /redqueen
door-xbee:
image: mlehner/foundry:door-xbee
logging: *default-logging
profiles: ["xbee"]
restart: always
depends_on:
- mysql
networks:
- mysql
build:
context: door/
target: door-xbee
environment:
- REDQUEEN_DB_HOST=mysql
- REDQUEEN_XBEE_DOOR_IDENTIFIER
- REDQUEEN_DATABASE
- REDQUEEN_DB_USER
- REDQUEEN_DB_PASS
devices:
- "/dev/ttyUSB0:/dev/ttyUSB0"
door-mqtt:
image: mlehner/foundry:door-mqtt
logging: *default-logging
restart: always
depends_on:
- mysql
networks:
- mysql
- mqtt
build:
context: door/
target: door-mqtt
environment:
- REDQUEEN_DB_HOST=mysql
- REDQUEEN_MQTT_HOST=mosquitto
- REDQUEEN_DATABASE
- REDQUEEN_DB_USER
- REDQUEEN_DB_PASS
develop:
watch:
- action: sync+restart
path: door/redqueen-mqtt.py
target: /redqueen.py
mosquitto:
restart: always
logging: *default-logging
image: eclipse-mosquitto
networks:
- mqtt
volumes:
- ./mosquitto/config:/mosquitto/config
- ./mosquitto/data:/mosquitto/data
ports:
- 1883:1883
mysql:
restart: always
logging: *default-logging
image: mysql:lts
command:
- --performance-schema=OFF
networks:
- mysql
volumes:
- mysql_data:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD
- MYSQL_DATABASE=$REDQUEEN_DATABASE
- MYSQL_USER=$REDQUEEN_DB_USER
- MYSQL_PASSWORD=$REDQUEEN_DB_PASS
tunnel:
logging: *default-logging
image: cloudflare/cloudflared
restart: unless-stopped
command: tunnel --no-autoupdate run
networks:
- proxy
environment:
- TUNNEL_TOKEN
volumes:
mysql_data:
networks:
api:
proxy:
mqtt:
mysql: