Skip to main content

wos-deploy

wos-deploy — create and operate WOS server instances with Docker Compose on published wos-prod-s* images: a private ring, a global ring, or a tick-quote add-on (RFQ) instance with an optional realtime CTP feeder.

Requirements

  • Python 3.9+ (the tool is stdlib-only)
  • Docker Engine with the compose plugin (docker compose)
  • Linux or macOS host, x86_64 or arm64

Install

pip install wos-deploy
wos-deploy --version

wos is installed as a short alias of wos-deploy; every command below works with either name.

Quick start — a tick-quote add-on (RFQ) instance

wos-deploy setup-folder ./my-rfq --env prod --port-offset 37
cd my-rfq
wos-deploy setup-rfq -r --image-tag <tag-with-the-rfq-role>   # add --registry HOST:PORT for a private registry
wos-deploy deploy
wos-deploy config        # prints the storage-master and upload-web endpoints

--image-tag is required on every setup-* kind: there is no default tag, and only the tag you name is pulled (WOS_PRIMARY_IMAGE=<repository>:<tag> names the whole reference instead).

Ports are published on 127.0.0.1 by default (this host only). --publish-lan (all interfaces) or --bind ADDRESS opens them to other machines — including the database and the container's SSH; the tool warns and names them. An instance set up with 2.1 or earlier keeps publishing on all interfaces after the upgrade (recorded as WOS_BIND=0.0.0.0 in its .env with a one-line notice); set WOS_BIND=127.0.0.1 there and wos-deploy restart to move it to loopback.

With --enable_ctp (and --enable_secondary on an arm64 host) the realtime CTP feeder runs on an x64 service with your own CTP account; the inputs are stored only in ./rfq-ctp.env (mode 0600). See wos-deploy setup-rfq --help.

Quick start — a private ring

wos-deploy setup-folder ./my-ring --env prod --port-offset 3
cd my-ring
wos-deploy setup-private --wosgw <global-gateway-host>:<port> --image-tag <tag> -r
wos-deploy deploy

Commands

Command Description
wos-deploy setup-folder <name> Create a deployment folder
wos-deploy setup-private --wosgw H:P --image-tag T Configure a private ring (host arch auto-detected; --host-arch overrides)
wos-deploy setup-global --image-tag T Configure a global ring
wos-deploy setup-rfq Configure a tick-quote add-on instance
wos-deploy deploy [--skip-pull] Pull images and start services
wos-deploy re-setup Regenerate an instance's generated layer
wos-deploy restart [SERVICE] Restart services without reinitialising
wos-deploy shutdown [SERVICE] Stop services
wos-deploy status [-j] Container status
wos-deploy logs [-f] [SERVICE] Service logs
wos-deploy shell <SERVICE> Interactive shell in a container
wos-deploy config Resolved configuration (secrets masked)
wos-deploy rollback Return to the images of the previous deploy
wos-deploy reset Remove containers, volumes and state

Building from source

./build.sh --wheel-only     # dist/wos_deploy-<version>-py3-none-any.whl + sdist

Licence

Apache-2.0 (see LICENSE).

Metadata

Release files for wos-deploy 2.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for wos-deploy 2.3.1
File Size Uploaded
wos_deploy-2.3.1.tar.gz 65.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for wos-deploy 2.3.1
File Interpreter ABI Platform
wos_deploy-2.3.1-py3-none-any.whl Python 3 none any Details

Total release size: 141.7 kB

Release files / wos_deploy-2.3.1.tar.gz

Download URL wos_deploy-2.3.1.tar.gz
Size 65.9 kB
Tags Source
SHA-256 checksum
How to use checksums
1b01396dbd38a8f2bb7077d6f6c0b6f4d7b0e652f2b878b6d413538157fc43b2
BLAKE2b-256 checksum
How to use checksums
d0ddb5dbb7fec9acf70158e7a302da96e54c541f2d5de53d11a456cfe57afd01
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.11

Release files / wos_deploy-2.3.1-py3-none-any.whl

Download URL wos_deploy-2.3.1-py3-none-any.whl
Size 75.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e609ba7698bdb02cc98040c5d828258f8103d0894a14a1673a4b72a073bb36f8
BLAKE2b-256 checksum
How to use checksums
76027d2a0f36373f4d4f718e8696dbcf31c3763e0e4073b94469613c08b18b63
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.11

Release history Release notifications | RSS feed

2.3.3

2 release files

2.3.2

2 release files

This release

2.3.1 This release

2 release files

2.3.0

2 release files

2.2.0

2 release files

2.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page