edgible application
Manage applications
edgible application list
Section titled “edgible application list”Aliases: ls
List all configured applications
edgible application list [flags]| Flag | Description |
|---|---|
--json | Output as JSON |
edgible application create
Section titled “edgible application create”Aliases: new
Create a new application
edgible application create [flags]By default, every create subcommand waits for the application to converge on its device — the same streaming phase output that stack deploy prints — and exits non-zero if convergence fails or times out. For an https app the wait ends with a certificate status line (issued, or validating — check with: edgible certs). Pass --no-wait to return as soon as the application is registered; the CLI then prints Application registered. Deploying — check progress with: edgible application get <name> and exits 0. --wait-timeout <seconds> (default 600) bounds the wait.
edgible application create existing
Section titled “edgible application create existing”Create application for an existing port that is open on the computer
edgible application create existing [flags]| Flag | Description |
|---|---|
-n, --name <name> | Application name |
-d, --description <description> | Application description |
-p, --port <port> | Port number |
--protocol <protocol> | Protocol (http, https, tcp, udp) |
--https-upgrade | Upgrade HTTP protocol to HTTPS automatically |
--device-id <id> | Serving device ID |
--gateway-ids <ids> | Comma-separated gateway device IDs (omit to use Edgible managed gateway) |
--hostnames <hostnames> | Comma-separated additional hostnames to route to this app |
--auth-modes <modes> | Auth modes: none, org, api-key (comma-separated for multiple) |
--allowed-orgs <ids> | Comma-separated organization IDs allowed (when org auth is used) |
--non-interactive | Run in non-interactive mode |
--no-wait | Return after registration without waiting for on-device convergence |
--wait-timeout <seconds> | Max seconds to wait for convergence |
edgible application create docker-compose
Section titled “edgible application create docker-compose”Create application from docker-compose file (on device)
edgible application create docker-compose [flags]| Flag | Description |
|---|---|
-n, --name <name> | Application name |
-d, --description <description> | Application description |
--compose-file <file> | Path to docker-compose.yml file |
--device-id <id> | Serving device ID |
--gateway-ids <ids> | Comma-separated gateway device IDs (omit to use Edgible managed gateway) |
--hostnames <hostnames> | Comma-separated additional hostnames to route to this app |
--auth-modes <modes> | Auth modes: none, org, api-key (comma-separated for multiple) |
--allowed-orgs <ids> | Comma-separated organization IDs allowed (when org auth is used) |
--non-interactive | Run in non-interactive mode |
--no-wait | Return after registration without waiting for on-device convergence |
--wait-timeout <seconds> | Max seconds to wait for convergence |
edgible application create managed-process
Section titled “edgible application create managed-process”Create application from a managed process (agent runs the command)
edgible application create managed-process [flags]| Flag | Description |
|---|---|
-n, --name <name> | Application name |
-d, --description <description> | Application description |
-c, --command <command> | Command to execute |
-p, --port <port> | Port number the process will listen on |
--working-dir <dir> | Working directory for the process |
--env <vars> | Environment variables (format: KEY=VALUE,KEY2=VALUE2) |
--log-file <path> | Path to log file for stdout/stderr |
--protocol <protocol> | Protocol (http, https, tcp, udp) |
--device-id <id> | Serving device ID |
--gateway-ids <ids> | Comma-separated gateway device IDs (omit to use Edgible managed gateway) |
--hostnames <hostnames> | Comma-separated additional hostnames |
--auth-modes <modes> | Auth modes: none, org, api-key (comma-separated for multiple) |
--allowed-orgs <ids> | Comma-separated organization IDs allowed (when org auth is used) |
--non-interactive | Run in non-interactive mode |
--no-wait | Return after registration without waiting for on-device convergence |
--wait-timeout <seconds> | Max seconds to wait for convergence |
edgible application create vm
Section titled “edgible application create vm”Create a VM application (managed by the agent via QEMU or other backends)
edgible application create vm [flags]| Flag | Description |
|---|---|
-n, --name <name> | Application name |
-d, --description <description> | Application description |
--backend <backend> | VM backend (qemu) |
--disk-image <path> | Disk image path or URL |
--memory <mib> | Memory in MiB (default: 512) |
--cpus <count> | Number of CPUs (default: 1) |
--ssh-port <port> | Host port forwarded to VM port 22 (default: 2222) |
--ssh-public-key <key> | SSH public key to inject via cloud-init |
--arch <arch> | VM architecture: x86_64 or aarch64 (default: x86_64) |
--device-id <id> | Serving device ID |
--gateway-ids <ids> | Comma-separated gateway device IDs |
--hostnames <hostnames> | Comma-separated additional hostnames |
--auth-modes <modes> | Auth modes: none, org, api-key |
--allowed-orgs <ids> | Comma-separated allowed organization IDs |
--non-interactive | Run in non-interactive mode |
--no-wait | Return after registration without waiting for on-device convergence |
--wait-timeout <seconds> | Max seconds to wait for convergence |
edgible application get
Section titled “edgible application get”Aliases: status, info
Get status of a specific application
edgible application get [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
--json | Output as JSON |
edgible application events
Section titled “edgible application events”Show lifecycle events for an application
edgible application events [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
-n, --limit <number> | Maximum number of events to return |
--json | Output as JSON |
edgible application logs
Section titled “edgible application logs”Show live workload logs collected from the application’s serving device(s)
edgible application logs [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
--since <time> | Only lines at/after this time (ISO-8601 or epoch-ms) |
-n, --limit <number> | Maximum number of lines per device |
--device <id> | Restrict to a single serving device the app is deployed on |
--priority <level> | Minimum journald priority: debug, info, warning, err |
-f, --follow | Poll continuously and stream new lines (Ctrl+C to stop) |
--json | Output raw JSON |
edgible application trace
Section titled “edgible application trace”Trace the data path for an application hop-by-hop (gateway HAProxy → WireGuard → serving Caddy → workload)
edgible application trace [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
--timeout <ms> | Overall trace timeout budget in milliseconds (server-capped under the API Gateway ceiling) |
--json | Output raw JSON only |
edgible application doctor
Section titled “edgible application doctor”Composed single-app triage: deployment status, certificates, data-path trace, and workload log collection, ending in a primary verdict and follow-up command
edgible application doctor [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
--timeout <ms> | Data-path trace timeout budget in milliseconds (server-capped under the API Gateway ceiling) |
--json | Output the verdict, findings, and raw checks as JSON |
edgible application access
Section titled “edgible application access”Show gateway access rules and recent denials for an application
edgible application access [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
-n, --limit <number> | Maximum number of recent denials to return |
--json | Output as JSON |
edgible application update
Section titled “edgible application update”Update an existing application (e.g. auth modes, name)
edgible application update [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
-n, --name <name> | Application name |
--auth-modes <modes> | Auth modes: none, org, api-key (comma-separated for multiple) |
--allowed-orgs <ids> | Comma-separated organization IDs allowed (when org auth is used) |
--target-state <state> | Target lifecycle state: running, suspended |
edgible application delete
Section titled “edgible application delete”Aliases: rm
Delete an application
edgible application delete [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
-n, --name <name> | Application name (resolved to ID for deletion) |
-f, --force | Skip confirmation prompt |
--non-interactive | Run in non-interactive mode |
--wait | After deletion, wait for per-device teardown confirmation (default: return immediately) |
--wait-timeout <seconds> | Max seconds to wait for teardown (with —wait) |
edgible application benchmark
Section titled “edgible application benchmark”Benchmark application creation and reachability for all workload types
edgible application benchmark [flags]| Flag | Description |
|---|---|
--device-id <id> | Serving device ID |
--gateway-ids <ids> | Comma-separated gateway IDs (omit for Edgible managed gateway) |
--preexisting-port <n> | Port already listening on the device (default: agent telemetry port 29999) |
--process-port <n> | Port for managed-process app |
--compose-port <n> | Port for docker-compose app |
--timeout <seconds> | Max wait per step in seconds |
--no-cleanup | Keep applications after benchmark (default: delete them) |
--json | Machine-readable output |
edgible application releases
Section titled “edgible application releases”List the cut releases for an application (version, status, current pointer, signature)
edgible application releases [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
--json | Output as JSON |
edgible application rollback
Section titled “edgible application rollback”Re-point the deployment at an earlier cut release (no new version, no tag re-resolve)
edgible application rollback <version> [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
-y, --yes | Skip the confirmation prompt |
edgible application redeploy
Section titled “edgible application redeploy”Force re-realization of the current release on its device(s) (no version cut)
edgible application redeploy [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
edgible application rollout
Section titled “edgible application rollout”Inspect release rollout across an application’s devices
edgible application rollout [flags]edgible application rollout status
Section titled “edgible application rollout status”Per-device convergence toward the current release. Exit code: 0 when all converged, 1 when any device is pending (scriptable rollout gate).
edgible application rollout status [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
--json | Output as JSON |
edgible application api-keys
Section titled “edgible application api-keys”Aliases: keys
Manage application API keys
edgible application api-keys [flags]edgible application api-keys list
Section titled “edgible application api-keys list”Aliases: ls
List API keys for an application
edgible application api-keys list [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
--json | Output as JSON |
edgible application api-keys create
Section titled “edgible application api-keys create”Aliases: new
Create a new API key
edgible application api-keys create [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
-n, --name <name> | Key name |
--expires <date> | Expiration date (ISO format) |
edgible application api-keys delete
Section titled “edgible application api-keys delete”Aliases: rm
Delete an API key
edgible application api-keys delete [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
-k, --key-id <id> | API Key ID |
-f, --force | Skip confirmation prompt |
edgible application short-codes
Section titled “edgible application short-codes”Aliases: codes
Manage application short codes
edgible application short-codes [flags]edgible application short-codes list
Section titled “edgible application short-codes list”Aliases: ls
List short codes for an application
edgible application short-codes list [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
--json | Output as JSON |
edgible application short-codes create
Section titled “edgible application short-codes create”Aliases: new
Create a new short code
edgible application short-codes create [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
-n, --name <name> | Code name/description |
--expires <date> | Expiration date (ISO format) |
--max-uses <number> | Maximum number of uses |
edgible application short-codes delete
Section titled “edgible application short-codes delete”Aliases: rm
Delete a short code
edgible application short-codes delete [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
-c, --code-id <id> | Short Code ID |
-f, --force | Skip confirmation prompt |
edgible application short-codes toggle
Section titled “edgible application short-codes toggle”Enable or disable a short code
edgible application short-codes toggle [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
-c, --code-id <id> | Short Code ID |
edgible application storage
Section titled “edgible application storage”Manage application storage records (platform + host-bind)
edgible application storage [flags]edgible application storage list
Section titled “edgible application storage list”Aliases: ls
List storage records (platform + host-bind) for an application
edgible application storage list [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
--json | Output as JSON |
edgible application storage declare
Section titled “edgible application storage declare”Propose spec.storage[] entries for undeclared host-bind volumes
edgible application storage declare [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
--auto-declare-yes | Accept all proposals without prompting (CI-friendly) |
--non-interactive | Skip prompts even on a TTY (use with —auto-declare-yes) |
--json | Output proposals as JSON instead of prompting |
edgible application storage promote
Section titled “edgible application storage promote”Promote a host-bind storage record to platform-managed storage on its serving device
edgible application storage promote [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
-s, --storage-name <name> | Storage record name |
--mobility <mobility> | Final mobility for the promoted record: immovable | movable | replicated |
--watch | Wait for the promote job to complete and report status |
edgible application storage push
Section titled “edgible application storage push”Ship local data into a storage volume on the application’s device
edgible application storage push [flags]| Flag | Description |
|---|---|
-i, --app-id <id> | Application ID |
-s, --storage-name <name> | Storage entry name (must exist in the application declaration) |
-p, --path <path> | Local file or directory to push |
--device-id <id> | Target device (defaults to the application’s first device) |
--no-pack | Treat —path as a pre-built tarball; do not pack with tar |
--quiesce | Stop the workload across the apply step (recommended for stateful apps) |
--apply-mode <mode> | Apply mode: replace | merge |
--json | Output as JSON |
edgible application ssh
Section titled “edgible application ssh”Open an SSH session to a VM application
edgible application ssh [flags]| Flag | Description |
|---|---|
-i, --id <id> | Application ID |
-u, --user <username> | SSH username (default: ubuntu) |
-k, --key <path> | Path to SSH private key |
--command <cmd> | Run a single command instead of interactive session |