Holoscan CLI - Run Command
holoscan run
- simplifies running a packaged Holoscan application by reducing the number of arguments required compared to docker run
. In addition, it follows the guidelines of HAP specification when launching your packaged Holoscan application.
holoscan run
[--help|-h] [--log-level|-l {DEBUG,INFO,WARN,ERROR,CRITICAL}] [--address ADDRESS] [--driver] [--input|-i INPUT] [--output|-o OUTPUT] [--fragments|-f FRAGMENTS] [--worker] [--config CONFIG] [--network|-n NETWORK] [--nic NETWORK_INTERFACE] [--render|-r] [--quiet|-q] [--uid UID] [--gid GID]image:[tag]
To run a packaged Holoscan application:
holoscan run -i /path/to/my/input -o /path/to/application/generated/output my-application:1.0.1
image:[tag]
Name and tag of the Docker container image to execute.
[--address ADDRESS]
Address ([<IP or hostname>][:<port>]
) of the App Driver. If not specified, the App Driver uses the default host address (0.0.0.0
) with the default port number (8765
).
For example:
--address my_app_network
--address my_app_network:8765
[--driver]
Run the App Driver on the current machine. Can be used together with the option to run both the App Driver and the App Worker on the same machine.
[--input|-i INPUT]
Specifies a directory path with input data for the application to process.
When specified, a directory mount is set up to the value defined in the environment variable HOLOSCAN_INPUT_PATH
.
[--output|-o OUTPUT]
Specifies a directory path to store application-generated artifacts.
When specified, a directory mount is set up to the value defined in the environment variable HOLOSCAN_OUTPUT_PATH
.
[--fragments|-f FRAGMENTS]
A Comma-separated names of the fragments to be executed by the App Worker. If not specified, only one fragment (selected by the App Driver) will be executed. all
can be used to run all the fragments.
[--worker]
Run the App Worker.
[--worker-address WORKER_ADDRESS]
The address ([<IP or hostname>][:<port>]
) of the App Worker. If not specified, the App Worker uses the default host address (0.0.0.0
) with the default port number randomly chosen from unused ports (between 10000
and 32767
).
For example:
--worker-address my_app_network
--worker-address my_app_network:10000
[--config CONFIG]
Path to the application configuration file. If specified, it overrides the embedded configuration file found in the environment variable HOLOSCAN_CONFIG_PATH
.
[--network|-n NETWORK]
The Docker network that the application connects to for communicating with other containers.
The Runner use the host
network by default if not specified. Otherwise, the specified value
is used to create a network with the bridge
driver.
For advanced usages,
first create a network using docker network create
and pass the name of the network to the --network
option.
Refer to Docker Networking documentation for additional details.
[--nic NETWORK_INTERFACE]
Name of the network interface to use with a distributed multi-fragment application.
This option sets UCX_NET_DEVICES
environment variable with the value specified and is required when
running a distributed multi-fragment application across multiple nodes.
See UCX Network Interface Selection for details.
[--render|-r]
Enable graphic rendering from your application. Defaults to False
.
[--quiet|-q]
Suppress the STDOUT and print only STDERR from the application. Defaults to False
.
[--uid UID]
Run the application with the specified user ID (UID). Defaults to the current user’s UID.
[--gid GID]
Run the application with the specified group ID (GID). Defaults to the current user’s GID.