This leverages docker-compose and deploys the following services:
- redis (pub/sub)
- socket-server application (2 instances)
- Traefik ad reverse proxy (with dynamic configuration)
Traefik is employed as proxy for Websockets connections.
It dynamically configures itself leveraging Docker Labels
on websocket service image
docker-compose up -d
# scaling websocket service
docker-compose up -d --scale socket-server=2 socket-server
docker stack deploy --compose-file docker-compose.yml wsk
The client endpoint is <http://localhost:80>
, path is wsk/
.
For any new client open a new terminale and run:
node client_socket.js