Management Interface: update¶
This command updates the Enterprise server to the latest version.
Note
The server can remain running while images are pulled. Restart the stack afterward (stop/start) to run the new version.
Typical Usage¶
Online:
./manage_server update
Online, management interface only (skip pulling images):
./manage_server update --only-update-self
Offline (using previously downloaded images):
# --offline below implies --no-update-self
./manage_server update --offline --imagefile images.tar
After updating:
1. If you updated the management interface, confirm the new version with ./manage_server --version.
2. Restart the stack to run the new images: ./manage_server stop && ./manage_server start --detach
Command Help¶
Update Enterprise server images and this CLI
Usage: manage_server update [OPTIONS]
Options:
-n, --offline Do not fetch resources from the network, install from local files
--swarm[=<STACK_NAME>] Operate in docker swarm mode [env: ENTERPRISE_STACK_NAME=]
--no-update-self Do not update this binary; only pull container images
--registry-host <HOSTNAME> Hostname of custom registry [env: ENTERPRISE_REGISTRY_HOST=registry.internal.v35.us] [default: registry.enterprise.binary.ninja]
-i, --imagefile <imagefile> Path to local image file (.tar or .tar.xz) [default: images.tar]
--registry-username <USER> Username for custom registry [env: ENTERPRISE_REGISTRY_USERNAME=]
--only-update-self Only update this binary; skip pulling container images
--registry-password <PASSWORD> Password for custom registry [env: ENTERPRISE_REGISTRY_PASSWORD=]
--docker-host <HOST> Overrides the default Docker/Podman Unix socket [env: DOCKER_HOST=]
--tag <tag> Update to a specific Enterprise server version
--container-engine <ENGINE> Container engine to use for deployments (docker or podman) [env: ENTERPRISE_CONTAINER_ENGINE=docker] [default: docker] [possible values: docker, podman]
-l, --license-file <license-file> Path to Binary Ninja license file [env: ENTERPRISE_SERVER_LICENSE_FILE=] [default: license.dat]
-b, --license-bundle <license-bundle> Local path to Enterprise client floating license bundle [env: ENTERPRISE_SERVER_LICENSE_BUNDLE_FILE=] [default: license-bundle.b64]
--uid <uid> User ID used for data and tasks (defaults to current User ID) [env: ENTERPRISE_SERVER_UID=]
--gid <gid> Group ID used for data and tasks (defaults to current Group ID) [env: ENTERPRISE_SERVER_GID=]
-h, --help Print help
Database Options:
--db-name <NAME> Name of database to use [env: ENTERPRISE_DATABASE_NAME=] [default: binaryninja_enterprise]
--db-host <HOSTNAME> Name of host to use when connecting to database [env: ENTERPRISE_DATABASE_HOST=] [default: database]
--db-port <PORT> The port to use when connecting to database [env: ENTERPRISE_DATABASE_PORT=] [default: 5432]
--db-user <USERNAME> The user to use when connecting to database [env: ENTERPRISE_DATABASE_USER=] [default: binaryninja_enterprise]
--db-password-file <FILE> Path to file containing password to authenticate with the database [env: ENTERPRISE_DATABASE_PASSWORD_FILE=] [default: ./secrets/db_password]
Key-Value Store Options:
--redis-url <URL> URL to use when connecting to message broker [env: ENTERPRISE_KV_STORE_URL=] [default: redis://redis:6379]
Object Store Options:
--object-store-bucket-name <BUCKET> Object store bucket name (must be between 3 and 63 characters, only using lowercase letters, numbers, dot, and hyphen) [env: ENTERPRISE_OBJECT_STORE_BUCKET_NAME=] [default: binaryninja-enterprise]
--object-store-endpoint-url <URL> Object store endpoint URL [env: ENTERPRISE_OBJECT_STORE_URL=] [default: https://object-store:8333]
--object-store-access-key-file <FILE> Path to file containing the access key ID to use when authenticating with the object store [env: ENTERPRISE_OBJECT_STORE_ACCESS_KEY_FILE=] [default: ./secrets/object_store_access_key_id]
--object-store-secret-key-file <FILE> Path to file containing the secret access key to use when authenticating with the object store [env: ENTERPRISE_OBJECT_STORE_SECRET_KEY_FILE=] [default: ./secrets/object_store_secret_access_key]