# Marketplace

> Deploy ready-made apps like n8n, Metabase, Grafana and Gitea in one click, with their database and a public HTTPS hostname wired in.

The Marketplace is a catalog of ready-made apps you deploy in one click. One install creates everything the app needs to run: the app itself, a managed [Postgres](/docs/data/postgres) database wired into it where the app uses one, and a public `*.ownkube.app` hostname with automatic TLS. There is no Dockerfile to write and no connection string to copy. Ownkube sets the variables, generates the secrets and starts the pieces in the right order.

<img src="/docs/screenshots/marketplace.webp" alt="Screenshot of the Marketplace catalog in the Ownkube dashboard, showing app cards for n8n, Metabase, Directus and others" />

Every app runs from its official upstream image, pinned to a tested version. You can browse the catalog publicly at [ownkube.io/templates](https://ownkube.io/templates).

## The catalog

| App | What it is | What one install creates |
| --- | --- | --- |
| [n8n](https://ownkube.io/templates/n8n) | Visual workflow automation | n8n web app, managed Postgres 17 |
| [Spring PetClinic](https://ownkube.io/templates/spring-petclinic) | The classic Spring sample app, seeds sample data on first start | PetClinic web app, managed Postgres 17 |
| [Directus](https://ownkube.io/templates/directus-postgres) | Admin data studio with an instant REST and GraphQL API | Directus web app, managed Postgres 17, managed [Valkey cache](/docs/data/valkey) |
| [Metabase](https://ownkube.io/templates/metabase) | Analytics dashboards and questions over your data | Metabase web app, managed Postgres 17 |
| [Wiki.js](https://ownkube.io/templates/wiki-js) | Wiki with Markdown and visual editors | Wiki.js web app, managed Postgres 17 |
| [Umami](https://ownkube.io/templates/umami-postgres) | Privacy-first, cookie-free web analytics | Umami web app, managed Postgres 17 |
| [Vaultwarden](https://ownkube.io/templates/vaultwarden-postgres) | Password manager that works with Bitwarden clients | Vaultwarden web vault, managed Postgres 17 |
| [Gitea](https://ownkube.io/templates/gitea) | Git hosting with issues and pull requests, clone and push over HTTPS | Gitea web app with a volume for repositories, managed Postgres 17 |
| [Forgejo](https://ownkube.io/templates/forgejo) | Community-run Git hosting, a Gitea fork | Forgejo web app with a volume for repositories, managed Postgres 17 |
| [Grafana](https://ownkube.io/templates/grafana) | Dashboards and alerting over metrics, logs and SQL | Grafana web app, managed Postgres 17 |
| [Uptime Kuma](https://ownkube.io/templates/uptime-kuma) | Uptime checks, alerts and public status pages | Uptime Kuma web app with a volume for its data (no separate database) |
| [NocoDB](https://ownkube.io/templates/nocodb) | Spreadsheet-style tables, forms and kanban views with a REST API | NocoDB web app with a volume for attachments, managed Postgres 17 |
| [DocuSeal](https://ownkube.io/templates/docuseal) | Fillable PDF forms and e-signatures | DocuSeal web app with a volume for documents, managed Postgres 17 |
| [Open WebUI](https://ownkube.io/templates/open-webui) | Chat interface for language models, bring an OpenAI-compatible API | Open WebUI web app with a volume for uploads, managed Postgres 17 |

Every web app gets a public hostname with automatic TLS. Databases and caches stay on the [private network](/docs/networking/private), reachable only from the app.

Directus is the one app that asks for something before it deploys: the email for its first admin account. Ownkube generates the password, and you can reveal it on the deployment afterwards.

## Deploy from the dashboard

1. **Open the Marketplace**

   Click **Marketplace** in the dashboard's top navigation, or press <kbd>⌘</kbd> <kbd>K</kbd> and search for an app. The catalog lives at [`app.ownkube.io/dashboard/marketplace`](https://app.ownkube.io/dashboard/marketplace).

2. **Pick an app**

   Each app's page shows what one install creates, the variables Ownkube sets for you and the inputs it collects. Click **Deploy**.

   <img src="/docs/screenshots/marketplace-n8n.webp" alt="Screenshot of the n8n Marketplace page, listing what the install creates and a Deploy button" />

3. **Fill in the deploy flow**

   The flow opens in place. It asks for any inputs the app needs and where to run it: an Ownkube Compute [region](/docs/deployments/regions), or a [cluster](/docs/own-cloud/clusters) in your own AWS account.

4. **Deploy**

   Ownkube creates the database (and cache, if the app has one), then the app, and wires them together. Follow progress on the dashboard. When the app is healthy, open its hostname.

The **Deploy** button on each [ownkube.io/templates](https://ownkube.io/templates) page links straight into this flow. If you're signed out, you sign in first and land back on the dashboard with the flow open.

A Marketplace app bills like any other app, database and cache: per minute from your prepaid wallet. If the wallet is empty, the flow takes you to top up and then resumes. See [Plans and pricing](/docs/billing/plans).

## Deploy from a coding agent or the CLI

The [Ownkube MCP server](/docs/mcp) exposes the Marketplace as tools, so a connected coding agent can deploy an app for you.

| Tool | What it does |
| --- | --- |
| `list_marketplace_apps` | List the catalog |
| `get_marketplace_app` | One app's details: what it creates, the variables set for you and the inputs to collect |
| `check_marketplace_app` | Dry run: validate the inputs and name without creating anything |
| `deploy_marketplace_app` | Deploy the app with its database and cache in one call, to an Ownkube Compute `region` or your own `clusterId` |
| `delete_marketplace_app` | Delete a deployed app as one unit |

A typical request: *"Deploy Umami on Ownkube in the closest region."* The agent reads the app, runs the dry run, deploys and follows progress until the app is healthy. Tools that create or delete ask you to confirm first.

The same operations are `okctl marketplace list|get|check|deploy|delete` in [okctl](/docs/cli) v0.4.0 and later. See [CLI commands](/docs/cli/commands#marketplace).

## One install, one app

An install shows as **one app** on the dashboard, with its database and cache grouped under it. You manage the pieces like any other [deployment](/docs/deployments): [logs](/docs/observability/logs), [metrics](/docs/observability/metrics), [variables](/docs/deployments/variables) and scaling all work the same way.

Deleting it removes the app, its database and its cache together.

Deleting a Marketplace app deletes its database and cache, **including their data**. Export anything you want to keep first.

- [Postgres](/docs/data/postgres)
- [MCP server](/docs/mcp)
- [Create a deployment](/docs/deployments/create)

---

**Want an app that isn't in the catalog?** Email [support@ownkube.io](mailto:support@ownkube.io?subject=Marketplace%20request). We add apps our users ask for.

## Search

This site has a search endpoint: https://context7.com/api/v2/ask?siteKey=ask_c64dfe8ffaa8d3ad19576838&query=<URL-encoded question>. It returns documentation that answers the question, with a source link for each part. No API key is needed. If nothing matches, it says so.
