Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/mikronita/mikrom/llms.txt

Use this file to discover all available pages before exploring further.

The mikrom app command group is the primary interface for managing containerised workloads on the Mikrom edge platform. From creating an application from a Git repository and triggering builds, to rolling back to a previous deployment and fine-tuning autoscaling thresholds, every stage of an application’s lifecycle is accessible through these subcommands. Mikrom builds your application inside an OCI image, schedules it on a worker node, and boots it inside a Firecracker or Cloud Hypervisor microVM depending on your choice of hypervisor.

mikrom app list

Lists every application registered in the current project.
mikrom app list
Example
mikrom app list
Example output
NAME        GIT URL                                         CREATED
my-app      https://github.com/alice/my-app.git             2024-11-01
api-server  https://github.com/alice/api-server.git         2024-12-15

mikrom app create

Creates a new application record linked to a Git repository. Mikrom watches the repository for pushes and can trigger automatic deployments via a GitHub webhook (see mikrom app secret).
mikrom app create --name <name> --git-url <url>
Example
mikrom app create --name my-app --git-url https://github.com/alice/my-app.git
Flags
--name
string
required
Unique name for the application within the current project. This name is used as the identifier in all other mikrom app subcommands.
--git-url
string
required
HTTPS URL of the Git repository that contains the application source code. Mikrom’s builder service clones this URL to produce an OCI image.

mikrom app delete

Permanently removes an application and all of its associated resources. Use --yes to skip the interactive confirmation prompt in automated scripts.
mikrom app delete --name <name> [--yes]
Example
mikrom app delete --name my-app
Flags
--name
string
required
Name of the application to delete.
--yes
boolean
Skip the interactive confirmation prompt. Useful for CI/CD scripts.
Deleting an application is irreversible. All deployment history, secrets, and scaling configuration for the application are permanently removed.

mikrom app deploy

Triggers a new build and deployment for an application. Mikrom clones the repository, builds an OCI image via the builder service, schedules the workload, and boots it in a microVM with the requested resources.
mikrom app deploy --name <name> [--cpu 1-4] [--memory 512M|1G|2G|4G] [--hypervisor firecracker|cloud-hypervisor|unspecified]
Example — default resources
mikrom app deploy --name my-app
Example — custom resources
mikrom app deploy --name my-app --cpu 2 --memory 1G --hypervisor firecracker
Flags
--name
string
required
Name of the application to deploy.
--cpu
integer
default:"1"
Number of vCPU cores to allocate to the microVM. Accepted values: 1, 2, 3, 4.
--memory
string
default:"512M"
Amount of memory to allocate. Accepted values: 512M, 1G, 2G, 4G. The value is parsed by the CLI’s parse_memory_choice function and converted to MiB internally.
--hypervisor
string
default:"unspecified"
Hypervisor backend for the microVM. Accepted values:
ValueDescription
firecrackerUse the Firecracker VMM (optimised for fast cold-start)
cloud-hypervisorUse Cloud Hypervisor (richer device model)
unspecifiedLet the scheduler choose the best available backend
The default resource preset is 1 vCPU and 512M RAM, matching the presets available in the Mikrom dashboard.

mikrom app activate

Activates a previously built deployment, effectively performing a rollback or promotion. The specified deployment must already exist in the application’s deployment history.
mikrom app activate --app <name> --deployment-id <id>
Example
mikrom app activate --app my-app --deployment-id dep_01j9k2m3n4p5q6r7
Flags
--app
string
required
Name of the application.
--deployment-id
string
required
The ID of the deployment to activate. Retrieve available deployment IDs with mikrom app deployments --name <name>.

mikrom app deployments

Lists the full deployment history for an application, including deployment IDs, statuses, and timestamps. Use the IDs shown here with mikrom app activate to roll back.
mikrom app deployments --name <name>
Example
mikrom app deployments --name my-app
Example output
ID                       STATUS     CREATED
dep_01j9k2m3n4p5q6r7     active     2024-12-20 10:05:01
dep_01j8h1l2k3m4n5o6     inactive   2024-12-18 14:22:33
dep_01j7g0k1j2l3m4n5     inactive   2024-12-15 09:10:55
Flags
--name
string
required
Name of the application whose deployment history you want to view.

mikrom app secret

Displays the GitHub webhook secret for the application. Configure this value in your GitHub repository’s webhook settings to enable automated deployments on every push.
mikrom app secret --name <name>
Example
mikrom app secret --name my-app
Flags
--name
string
required
Name of the application whose webhook secret you want to retrieve.
Treat this secret like a password. Anyone who holds it can trigger deployments for your application. Rotate it by deleting and recreating the application if it is ever exposed.

mikrom app scale

Configures the scaling behaviour for an application. Mikrom supports both fixed replica counts and policy-driven autoscaling based on CPU and memory thresholds.
mikrom app scale --name <name> [--replicas 0-3] [--auto true|false] [--min 0-3] [--max 1-3] [--cpu <threshold%>] [--mem <threshold%>]
Example — set fixed replicas
mikrom app scale --name my-app --replicas 2
Example — configure autoscaling
mikrom app scale --name my-app --auto true --min 1 --max 3 --cpu 70 --mem 80
Example — disable autoscaling and go back to fixed replicas
mikrom app scale --name my-app --replicas 1
Flags
--name
string
required
Name of the application to configure.
--replicas
integer
Desired fixed replica count (03). Setting this flag disables autoscaling for the application and pins the instance count to the specified value.
--auto
boolean
Enable (true) or disable (false) autoscaling. When enabled, the scheduler adjusts the replica count automatically based on --cpu and --mem thresholds.
--min
integer
Minimum number of replicas for the autoscaler (03). The scheduler will not scale below this value.
--max
integer
Maximum number of replicas for the autoscaler (13). The scheduler will not scale above this value.
--cpu
float
CPU utilisation threshold (as a percentage) that triggers a scale-out event when exceeded.
--mem
float
Memory utilisation threshold (as a percentage) that triggers a scale-out event when exceeded.
All Mikrom applications automatically scale to zero after a period of inactivity, regardless of the configured minimum replica count. The first request after a scale-to-zero event cold-starts a new microVM.
Setting --replicas overrides and disables autoscaling. To re-enable autoscaling after using --replicas, run mikrom app scale again with --auto true and the desired --min / --max bounds.

Build docs developers (and LLMs) love