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

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.2
File Size Uploaded
wos_deploy-2.3.2.tar.gz 66.3 kB Details

Built distribution (wheel)

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

Total release size: 142.5 kB

Release files / wos_deploy-2.3.2.tar.gz

Download URL wos_deploy-2.3.2.tar.gz
Size 66.3 kB
Tags Source
SHA-256 checksum
How to use checksums
1ec8f2cc341cf867d3a73e5d63bee2092b65da43444b321f051cd4c9e4cd9d7e
BLAKE2b-256 checksum
How to use checksums
e0558c466bccac04bf9a44d625376a2adc0a59b2b7c3b1b754e751b69d61f541
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.2-py3-none-any.whl

Download URL wos_deploy-2.3.2-py3-none-any.whl
Size 76.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1df6d4a27580a21ff950c9c0f6a77806dbe39aa63c8289cf6a42c7a837d948f2
BLAKE2b-256 checksum
How to use checksums
30171c9c1bdc0f8d658600480dc3819a159f424c573c7c540a35a0638a985b01
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

This release

2.3.2 This release

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