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.3

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.3
File Size Uploaded
wos_deploy-2.3.3.tar.gz 67.2 kB Details

Built distribution (wheel)

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

Total release size: 144.6 kB

Release files / wos_deploy-2.3.3.tar.gz

Download URL wos_deploy-2.3.3.tar.gz
Size 67.2 kB
Tags Source
SHA-256 checksum
How to use checksums
534af3607eae4eccaa6ad46db6ba585de58dcf6f083bcbd551cd6609f03f6dfc
BLAKE2b-256 checksum
How to use checksums
70cafffd48f5307f749b10e638a55e4d1fbf304d249dafaed490b2e6be63c1b8
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.3-py3-none-any.whl

Download URL wos_deploy-2.3.3-py3-none-any.whl
Size 77.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5c30145391f3576ebe71705d8167c946aaf7d9407a2d069b3cbe1507c4457c33
BLAKE2b-256 checksum
How to use checksums
eeadb0f691f1dffb9ea2f174afdfe1282c45fb9aab1ebce6537bf3435848b873
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

This release

2.3.3 This release

2 release files

2.3.2

2 release files

2.3.1

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