Skip to content

Commit 9769b73

Browse files
committed
update docker-compose to version load balance
1 parent 0173320 commit 9769b73

File tree

4 files changed

+114
-8
lines changed

4 files changed

+114
-8
lines changed

Diff for: docker-compose.yml

-8
This file was deleted.

Diff for: docker/Dockerfile

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
FROM haproxy:1.7
2+
3+
ENV HAPROXY_USER haproxy
4+
5+
RUN groupadd --system ${HAPROXY_USER} \
6+
&& useradd --system --gid ${HAPROXY_USER} ${HAPROXY_USER} \
7+
&& mkdir -p /var/lib/${HAPROXY_USER} \
8+
&& chown -R ${HAPROXY}:${HAPROXY_USER} /var/lib/${HAPROXY_USER}
9+
10+
COPY haproxy.cfg /usr/local/etc/haproxy/haproxy.cfg
11+
12+
CMD ["haproxy", "-f", "/usr/local/etc/haproxy/haproxy.cfg"]

Diff for: docker/docker-compose.yml

+64
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
version: '2'
2+
3+
services:
4+
rabbitmq-node-1:
5+
image: rabbitmq:3-management
6+
container_name: rabbitmq-node-1
7+
hostname: rabbitmq-node-1
8+
ports:
9+
- "15672:15672"
10+
- "5674:5672"
11+
networks:
12+
- cluster-network
13+
volumes:
14+
- $PWD/storage/rabbitmq-node-1:/var/lib/rabbitmq
15+
environment:
16+
- RABBITMQ_ERLANG_COOKIE=cluster_cookie
17+
- RABBITMQ_DEFAULT_USER=admin
18+
- RABBITMQ_DEFAULT_PASS=admin
19+
20+
rabbitmq-node-2:
21+
image: rabbitmq:3-management
22+
container_name: rabbitmq-node-2
23+
hostname: rabbitmq-node-2
24+
ports:
25+
- "15673:15672"
26+
- "5675:5672"
27+
networks:
28+
- cluster-network
29+
volumes:
30+
- $PWD/storage/rabbitmq-node-2:/var/lib/rabbitmq
31+
environment:
32+
- RABBITMQ_ERLANG_COOKIE=cluster_cookie
33+
- RABBITMQ_DEFAULT_USER=admin
34+
- RABBITMQ_DEFAULT_PASS=admin
35+
36+
rabbitmq-node-3:
37+
image: rabbitmq:3-management
38+
container_name: rabbitmq-node-3
39+
hostname: rabbitmq-node-3
40+
ports:
41+
- "15674:15672"
42+
- "5676:5672"
43+
networks:
44+
- cluster-network
45+
volumes:
46+
- $PWD/storage/rabbitmq-node-3:/var/lib/rabbitmq
47+
environment:
48+
- RABBITMQ_ERLANG_COOKIE=cluster_cookie
49+
- RABBITMQ_DEFAULT_USER=admin
50+
- RABBITMQ_DEFAULT_PASS=admin
51+
52+
haproxy:
53+
image: haproxy-rabbitmq-cluster:1.7
54+
container_name: haproxy
55+
hostname: haproxy
56+
ports:
57+
- "5672:5672"
58+
- "1936:1936"
59+
networks:
60+
- cluster-network
61+
62+
networks:
63+
cluster-network:
64+
driver: bridge

Diff for: docker/haproxy.cfg

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
global
2+
log 127.0.0.1 alert
3+
log 127.0.0.1 alert debug
4+
chroot /var/lib/haproxy
5+
maxconn 3000
6+
daemon
7+
user haproxy
8+
group haproxy
9+
10+
defaults
11+
log global
12+
option dontlognull
13+
option persist
14+
option redispatch
15+
retries 3
16+
timeout connect 5000
17+
timeout client 50000
18+
timeout server 50000
19+
20+
listen haproxy-stats
21+
bind *:1936
22+
mode http
23+
stats enable
24+
stats hide-version
25+
stats refresh 5s
26+
stats uri /haproxy?stats
27+
stats realm Haproxy\ Statistics
28+
stats auth haproxy:haproxy
29+
30+
listen rabbitmq
31+
bind *:5672
32+
mode tcp
33+
option tcplog
34+
balance roundrobin
35+
server rabbitmq-node-1 rabbitmq-node-1:5674 check inter 5000 rise 3 fall 5
36+
server rabbitmq-node-2 rabbitmq-node-2:5675 check inter 5000 rise 3 fall 5
37+
server rabbitmq-node-3 rabbitmq-node-3:5676 check inter 5000 rise 3 fall 5
38+

0 commit comments

Comments
 (0)