A kdb-x real-time engine with a synthetic data feed.
- Docker
- A valid kdb+ licence at
~/.kx/kc.lic
Note: Below assumes you've installed kdb-x from the KX developer centre. This installs kdb-x plus kdb-x modules to a default location of
~/.kx.
A number of kdb-x modules are downloaded as part of the base image. These include qmamba, logging and printf
Run from the docker/ directory:
cd docker
docker build -t kdb-base .export KDB_LICENSE_B64=$(base64 -w0 ~/.kx/kc.lic)
docker compose -f docker/compose.yaml upThis starts two containers on the kx bridge network:
| Container | Process | Port |
|---|---|---|
q-rte-0 |
RTE | 5003 |
q-feed-0 |
Feed | 5000 |
On first run the entrypoint uses qmamba to install kx.log and kx.printf from the kx Anaconda channel. Subsequent starts skip the install.
Tests require q and ~/.kx/mod installed locally.
QPATH=~/.kx/mod/:src/ q test.qTest files live in tests/. The runner prints a result table and JUnit XML output.