Skip to content

Commit 1eea043

Browse files
Adds docker compose for full setup
1 parent 9284ad6 commit 1eea043

File tree

1 file changed

+94
-0
lines changed

1 file changed

+94
-0
lines changed

docker-compose-full.yml

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
# Simple docker-compose file which sets up all needed backing services
2+
# Note that for the broker, the default credentials are ` intersect_username / intersect_password `
3+
# NOTE: DOES NOT CONTAIN APPLICATION, ONLY BACKING SERVICES
4+
5+
services:
6+
broker_1:
7+
image: "bitnami/rabbitmq:3.13.3"
8+
#network_mode: host
9+
ports:
10+
- "1883:1883" # MQTT port
11+
- "5672:5672" # AMQP port
12+
- "15672:15672" # Web UI
13+
environment:
14+
# full list of env variables available at https://github.com/bitnami/containers/blob/main/bitnami/rabbitmq/README.md
15+
RABBITMQ_PLUGINS: "rabbitmq_management rabbitmq_mqtt"
16+
RABBITMQ_USERNAME: "intersect_username"
17+
RABBITMQ_PASSWORD: "intersect_password"
18+
RABBITMQ_MANAGEMENT_ALLOW_WEB_ACCESS: "yes"
19+
healthcheck:
20+
test: rabbitmq-diagnostics -q ping && rabbitmq-diagnostics -q check_running && rabbitmq-diagnostics -q check_local_alarms
21+
interval: 10s
22+
retries: 5
23+
start_period: 10s
24+
timeout: 10s
25+
26+
# add 1 to each port number for the second broker
27+
broker_2:
28+
image: "bitnami/rabbitmq:3.13.3"
29+
ports:
30+
- "1884:1883" # MQTT port
31+
- "5673:5672" # AMQP port
32+
- "15673:15672" # Web UI
33+
environment:
34+
# full list of env variables available at https://github.com/bitnami/containers/blob/main/bitnami/rabbitmq/README.md
35+
RABBITMQ_PLUGINS: "rabbitmq_management rabbitmq_mqtt"
36+
RABBITMQ_USERNAME: "intersect_username"
37+
RABBITMQ_PASSWORD: "intersect_password"
38+
RABBITMQ_MANAGEMENT_ALLOW_WEB_ACCESS: "yes"
39+
healthcheck:
40+
test: rabbitmq-diagnostics -q ping && rabbitmq-diagnostics -q check_running && rabbitmq-diagnostics -q check_local_alarms
41+
interval: 10s
42+
retries: 5
43+
start_period: 10s
44+
timeout: 10s
45+
46+
proxy-server-on-broker-1:
47+
image: proxy-server
48+
build:
49+
context: .
50+
args:
51+
BIN_NAME: "proxy-http-server"
52+
ports:
53+
- "8080:8080"
54+
environment:
55+
PROXYAPP_PRODUCTION: "true"
56+
PROXYAPP_LOG_LEVEL: "debug"
57+
PROXYAPP_BROKER__USERNAME: "intersect_username"
58+
PROXYAPP_BROKER__PASSWORD: "intersect_password"
59+
PROXYAPP_BROKER__HOST: "broker_1"
60+
PROXYAPP_BROKER__PORT: 5672
61+
PROXYAPP_TOPIC_PREFIX: "org.fac.sys"
62+
PROXYAPP_APP_PORT: 8080
63+
PROXYAPP_USERNAME: "username"
64+
PROXYAPP_PASSWORD: "password"
65+
depends_on:
66+
broker_1:
67+
condition: service_healthy
68+
restart: true
69+
broker_2:
70+
condition: service_healthy
71+
restart: true
72+
73+
proxy-client-on-broker-2:
74+
image: proxy-client
75+
build:
76+
context: .
77+
args:
78+
BIN_NAME: "proxy-http-client"
79+
environment:
80+
PROXYAPP_PRODUCTION: "true"
81+
PROXYAPP_LOG_LEVEL: "debug"
82+
PROXYAPP_BROKER__USERNAME: "intersect_username"
83+
PROXYAPP_BROKER__PASSWORD: "intersect_password"
84+
PROXYAPP_BROKER__HOST: "broker_2"
85+
PROXYAPP_BROKER__PORT: 5672
86+
PROXYAPP_TOPIC_PREFIX: "org.fac.sys"
87+
PROXYAPP_OTHER_PROXY__URL: "http://proxy-server-on-broker-1:8080"
88+
PROXYAPP_OTHER_PROXY__USERNAME: "username"
89+
PROXYAPP_OTHER_PROXY__PASSWORD: "password"
90+
depends_on:
91+
proxy-server-on-broker-1:
92+
condition: service_started
93+
restart: true
94+

0 commit comments

Comments
 (0)