Run Server and Client
Start the Server with Docker
Section titled “Start the Server with Docker”docker run --rm \ -p 9173:9173 \ -v vaylix-data:/var/lib/vaylix \ -e VAYLIX_USER=vaylix \ -e VAYLIX_PASSWORD=vaylix \ ghcr.io/vaylix/vaylix:latestWhat this gives you:
- published
serverruntime - bound server on
0.0.0.0:9173 - authentication enabled by default
- outbound zstd frame compression enabled by default
- persistent data under
/var/lib/vaylix - server-managed storage keyring
You can also run a downloaded vaylix-server binary directly if you do not want Docker:
./vaylix-server \ --bind 127.0.0.1 \ --port 9173 \ --user vaylix \ --password vaylixStart the Client
Section titled “Start the Client”Use the downloaded vaylix-client binary:
./vaylix-client \ --url 'vaylix://vaylix:vaylix@127.0.0.1:9173'The default development credentials are:
- username:
vaylix - password:
vaylix
If you reuse an existing Docker volume, 0.5.1+ correctly reapplies changed VAYLIX_USER / VAYLIX_PASSWORD values on restart for the env-managed bootstrap admin.
URL-Based Connection
Section titled “URL-Based Connection”./vaylix-client \ --url 'vaylix://vaylix:vaylix@127.0.0.1:9173?output=table'Supported URL query options:
ssl=trueoutput=plain|table|jsonca_cert=/path/to/ca.pemclient_cert=/path/to/client.crtclient_key=/path/to/client.keyauth=falsecompression=none|zstd
First Commands
Section titled “First Commands”vaylix> pingPONG
vaylix> set name aliceOK
vaylix> get namealice
vaylix> info...TLS Example
Section titled “TLS Example”Server:
docker run --rm \ -p 9173:9173 \ -v vaylix-data:/var/lib/vaylix \ -v "$(pwd)/certs:/certs:ro" \ -e VAYLIX_USER=vaylix \ -e VAYLIX_PASSWORD=vaylix \ -e VAYLIX_SSL=true \ -e VAYLIX_TLS_CERT=/certs/server.crt \ -e VAYLIX_TLS_KEY=/certs/server.key \ ghcr.io/vaylix/vaylix:latestClient:
./vaylix-client \ --url 'vaylix://vaylix:vaylix@127.0.0.1:9173?ssl=true' \ --tls-ca-cert ./certs/ca.crtPlain TCP is the default so local development works without certificates. Production-facing deployments should enable TLS and provide a certificate chain and private key on the server.
mTLS Example
Section titled “mTLS Example”mTLS adds a client certificate requirement to TLS. It does not replace username/password authentication.
Server:
docker run --rm \ -p 9173:9173 \ -v vaylix-data:/var/lib/vaylix \ -v "$(pwd)/certs:/certs:ro" \ -e VAYLIX_USER=vaylix \ -e VAYLIX_PASSWORD=vaylix \ -e VAYLIX_SSL=true \ -e VAYLIX_TLS_CERT=/certs/server.crt \ -e VAYLIX_TLS_KEY=/certs/server.key \ -e VAYLIX_TLS_CLIENT_CA=/certs/client-ca.crt \ ghcr.io/vaylix/vaylix:latestClient:
./vaylix-client \ --url 'vaylix://vaylix:vaylix@127.0.0.1:9173?ssl=true' \ --tls-ca-cert ./certs/server-ca.crt \ --tls-client-cert ./certs/client.crt \ --tls-client-key ./certs/client.key