Apps and add-ons
edka apps installs and manages the apps of the catalog: Edka’s own, the
custom apps your organization published, and the
community’s. edka addons installs, updates and uninstalls the add-ons of a
cluster. Both work in the linked cluster or the one --cluster names.
Prerequisites
Section titled “Prerequisites”- The Edka CLI, signed in with
edka login. - A cluster. An app that uses PostgreSQL, Valkey or ClickHouse needs an instance of it in the cluster.
Install an app
Section titled “Install an app”-
Find the app and list its settings, with their defaults and which are required:
Terminal window edka apps catalog --category databasesedka apps catalog umami -
Install it and wait until it runs:
Terminal window edka apps install umami --waitIn a terminal,
installasks for what the app needs:- the PostgreSQL, Valkey or ClickHouse instance it uses, then the database and user in that instance, each from a picker;
- secrets the catalog doesn’t generate, at a hidden prompt;
- whether to expose the app, then its traffic class, then a hostname from the cluster’s domains on that class. For a wildcard domain, you type the name under it;
- a name for the new instance, when the app is already installed in the cluster.
It then shows every setting it will send and asks to go ahead.
--yesskips that question. Settings you didn’t set keep the catalog’s defaults, and Edka generates the app’s passwords. -
With
--wait, the command prints progress until the app is installed, and then the app with the statusinstalled.
--set key=value sets a setting without a question. A setting with a list of
options takes the option’s name. --set refuses secrets, since shell history
keeps them. Enter them at the prompt, or put them in a file for
--data @file.json.
edka apps install umami --set postgres_instance=postgres --set postgres_database=umami --set hostname=stats.example.comedka apps install n8n --name n8n-staging --data @n8n.jsonInstall from a script or an agent
Section titled “Install from a script or an agent”Scripts and agents never get a question. To find the value of a setting with a list of options, list them:
$ edka apps options umami postgres_database --set postgres_instance=postgres --json{"data": [{"value": "umami", "label": "umami"}], "open": false}open is true for lists such as namespaces, where a new name works too. A list
that depends on another setting takes that setting with --set.
With --json, a failed install prints each missing setting on stderr, with its
options or the setting it depends on:
{ "error": "…", "status": 400, "fields": [ { "field": "postgres_instance", "message": "Required", "label": "PostgreSQL instance", "type": "dynamic-select", "options": [{ "value": "104b21ed-…", "label": "postgres (postgres.postgres)" }] }, { "field": "postgres_database", "message": "Required", "label": "PostgreSQL database", "type": "dynamic-select", "depends_on": "postgres_instance" } ]}Manage installed apps
Section titled “Manage installed apps”edka apps list # Apps in the linked cluster, or in every clusteredka apps list --all --jsonedka apps get strapiedka apps logs strapi --followedka apps diagnose strapi # Why the app is not runningedka apps update strapi --wait # Move to the latest versionedka apps uninstall strapiCommands find an app by the name the console shows, or by its instance or
release name. apps update moves an app to the latest version of the catalog, or to the
one --version names. update and uninstall ask for confirmation, or take
--yes.
See Diagnose problems for what apps diagnose finds.
To package, publish and share your own app, see Custom apps.
Add-ons
Section titled “Add-ons”edka addons list # Installed add-ons, their versions and updatesedka addons list --outdatededka addons get cert-manageredka addons catalog --category securityedka addons install reflector --waitedka addons update cert-manager --wait # Update to the catalog versionedka addons update --all --wait # Update every add-on that has an updateedka addons uninstall reflectorThe UPDATE column of addons list names the catalog version when it is newer
than the installed one, and --outdated lists only those add-ons.
addons update moves an add-on to the catalog version, or to the one
--version names, and the add-on keeps its configuration. It shows both
versions and asks for confirmation, or takes --yes. --all updates every
add-on with a newer catalog version, after the add-ons it depends on, and asks
once. With --wait, each update finishes before the next starts, and a failure
stops the rest and names them.
addons install installs the catalog version with the add-ons it depends on,
and retries an add-on that failed. addons uninstall refuses a required
add-on, one that another installed add-on depends on, and one that is still
installing or updating. Edka also refuses while an app, a database or a domain
uses the add-on, and the error names what uses it.
install, update and uninstall take --wait, which prints progress until
the operation ends. A failed operation exits with the reason Edka recorded.
The console installs, updates and uninstalls six add-ons from other views.
edka addons lists them:
| Add-on | Console view |
|---|---|
| Zot | Registries |
| GitHub Actions runner controller | Actions |
| Envoy Gateway, Tailscale operator, MetalLB, Cloudflare connector | Gateway |