Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions MiscClients/spring_reactjs/src/main/resources/fixclient.cfg
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
[DEFAULT]
ConnectionType=initiator
TargetCompID=FIX_GWY_1
#SocketConnectHost=distributed_ats
SocketConnectHost=127.0.0.1
#SocketConnectHost=165.22.179.176
SocketConnectHost=distributed_ats
#SocketConnectHost=127.0.0.1
StartTime=00:00:00
EndTime=24:00:00
HeartBtInt=30
Expand Down
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,11 @@ services:
restart: unless-stopped
```

### Multi Matching Engine ATS, with each component running in a separate container
* [Docker Compose - Multi Matching Engine ATS](docker/docker-compose-multi-matching-engine.yml)
* [Docker Compose - WebTrader](docker/docker-compose-webtrader.yml)


### Dependencies

|Dependency|Component|
Expand Down
101 changes: 101 additions & 0 deletions docker/docker-compose-multi-matching-engine.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
version: '3.8'

services:

# DDS Discovery
fast_dds_discovery:
container_name: fast_dds_discovery
image: ghcr.io/mkipnis/distributed_ats:latest
command: >
bash -c "LD_LIBRARY_PATH=/usr/local/lib /usr/local/bin/fastdds discovery -q 51000"
ports:
- "51000:51000"
restart: no


# FIX Gateways
fix_gateway_1:
container_name: distributed_ats
image: ghcr.io/mkipnis/multi_matching_engine_ats:latest
depends_on:
- fast_dds_discovery
command: >
bash -c "/usr/local/bin/FIXGateway -c /usr/local/MiscATS/MultiMatchingEngineATS/config/fix_gwy_1.cfg"
environment:
- LOG_FILE_NAME=fix_gateway_1.log
volumes:
- ./logs:/var/log
ports:
- "15001:15001"
restart: no

fix_gateway_2:
container_name: fix_gateway_2
image: ghcr.io/mkipnis/multi_matching_engine_ats:latest
depends_on:
- fast_dds_discovery
command: >
bash -c "/usr/local/bin/FIXGateway -c /usr/local/MiscATS/MultiMatchingEngineATS/config/fix_gwy_2.cfg"
environment:
- LOG_FILE_NAME=fix_gateway_2.log
volumes:
- ./logs:/var/log
ports:
- "16001:16001"
restart: no


# Data Services
data_service_a:
container_name: data_service_a
image: ghcr.io/mkipnis/multi_matching_engine_ats:latest
depends_on:
- fast_dds_discovery
command: >
bash -c "/usr/local/bin/DataService -c /usr/local/MiscATS/MultiMatchingEngineATS/config/data_service_a.ini"
environment:
- LOG_FILE_NAME=data_service_a.log
volumes:
- ./logs:/var/log
restart: no

data_service_b:
container_name: data_service_b
image: ghcr.io/mkipnis/multi_matching_engine_ats:latest
depends_on:
- fast_dds_discovery
command: >
bash -c "/usr/local/bin/DataService -c /usr/local/MiscATS/MultiMatchingEngineATS/config/data_service_b.ini"
environment:
- LOG_FILE_NAME=data_service_b.log
volumes:
- ./logs:/var/log
restart: no


# Matching Engines
matching_engine_market_y:
container_name: market_y
image: ghcr.io/mkipnis/multi_matching_engine_ats:latest
depends_on:
- fast_dds_discovery
command: >
bash -c "/usr/local/bin/MatchingEngine -c /usr/local/MiscATS/MultiMatchingEngineATS/config/matching_engine_MARKET_Y.ini"
environment:
- LOG_FILE_NAME=matching_engine_MARKET_Y.ini
volumes:
- ./logs:/var/log
restart: no

matching_engine_market_z:
container_name: market_z
image: ghcr.io/mkipnis/multi_matching_engine_ats:latest
depends_on:
- fast_dds_discovery
command: >
bash -c "/usr/local/bin/MatchingEngine -c /usr/local/MiscATS/MultiMatchingEngineATS/config/matching_engine_MARKET_Z.ini"
environment:
- LOG_FILE_NAME=matching_engine_MARKET_Z.ini
volumes:
- ./logs:/var/log
restart: no
12 changes: 12 additions & 0 deletions docker/docker-compose-webtrader.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
version: '2'

services:
# WebTrader Front-End
distributed_ats_webtrader:
container_name: distributed_ats_webtrader
image: ghcr.io/mkipnis/distributed_ats_webtrader:latest
volumes:
- ./webtrader_logs:/usr/local/tomcat/logs
ports:
- "8080:8080"
restart: no
3 changes: 3 additions & 0 deletions docker/dockerize_dats.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,11 @@ set -x
# Core
docker build -t ghcr.io/mkipnis/distributed_ats_deps:latest -f Docker.Build_DATS_Deps .
docker build -t ghcr.io/mkipnis/distributed_ats:latest -f Docker.Build_Distributed_ATS .

# Exchanges
docker build --no-cache -t ghcr.io/mkipnis/dats_crypto_clob:latest -f Docker.Crypto_CLOB .
docker build --no-cache -t ghcr.io/mkipnis/dats_ust_clob:latest -f Docker.UST_CLOB .
docker build --no-cache -t ghcr.io/mkipnis/multi_matching_engine_ats:latest -f Docker.MultiMatchingEngineATS .

docker push ghcr.io/mkipnis/distributed_ats_deps:latest
docker push ghcr.io/mkipnis/distributed_ats:latest
Expand Down
1 change: 0 additions & 1 deletion docker/fixclient_docker.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ ConnectionType=initiator
TargetCompID=FIX_GWY_1
SocketConnectHost=distributed_ats
#SocketConnectHost=127.0.0.1
#SocketConnectHost=165.22.179.176
StartTime=00:00:00
EndTime=24:00:00
HeartBtInt=30
Expand Down