Cohesity App Marketplace¶
The Cohesity App Marketplace lets you deploy containerized applications directly alongside the Cohesity DataPlatform control plane. Your Gaia-powered application runs on the same cluster as the data — eliminating the need for external hosting, complex VPN tunnels, or third-party cloud infrastructure.
What the Marketplace Offers¶
- One-click deployment — Cluster admins install apps through the standard Cohesity UI.
- Shared authentication — The platform's token gate authenticates Cohesity users before requests reach your app.
- Automatic port assignment — NodePorts are assigned dynamically; your app reads the assigned port from an injected environment variable.
- Kubernetes-lite environment — Apps run in a restricted Kubernetes environment with a declarative AppSpec manifest.
- Built-in crash recovery — The platform restarts pods on failure; your
wrapper.shprovides an additional application-level restart loop.
Why Deploy Gaia Apps to the Marketplace?¶
| Benefit | Detail |
|---|---|
| Data locality | Your app runs next to the data. No firewall rules to open, no external endpoints to secure. |
| Managed auth | Cohesity handles user authentication. Your app receives a verified token it can pass to the Gaia API. |
| Zero external hosting | No Azure/AWS/GCP accounts required. The cluster is the deployment target. |
| End-user self-service | Cluster admins publish apps; users launch them from the Apps dashboard. |
| MCP integration | Expose Gaia knowledge bases to AI tools (Cursor, Claude Desktop, Copilot) from the cluster. |
Minimum Cluster Version¶
Cohesity 7.2 — Gaia must be enabled on the cluster. Earlier versions do not have the Gaia API endpoints this guide depends on.
Architecture Overview¶
A Marketplace app is a Docker image combined with an AppSpec manifest (appspec.yaml) and an app metadata file (app.json).
┌──────────────────────────────────────────────────────────────┐
│ Cohesity Cluster │
│ │
│ Kubernetes (internal) │
│ ┌──────────────────────────────────────────────────────┐ │
│ │ │ │
│ │ ReplicaSet ──▶ Pod │ │
│ │ └── Your Container (Docker image) │ │
│ │ │ │
│ │ Service (NodePort) │ │
│ │ └── cohesityTag: ui ──▶ Marketplace token gate │ │
│ │ │ │
│ └──────────────────────────────────────────────────────┘ │
│ │
│ Gaia API (same cluster, internal network) │
└──────────────────────────────────────────────────────────────┘
Chapter Contents¶
| Page | What you'll learn |
|---|---|
| How It Works | The full Marketplace app lifecycle: upload → install → run → update |
| AppSpec Reference | Complete reference for appspec.yaml — kinds, fields, and Cohesity extensions |
| Auth in the Marketplace | Token gate, unrestricted_app_ui_access, and API key injection |
| Packaging a Gaia App | Building Docker images, creating the app bundle, validation |
| Single-Container Pattern | Serving React + FastAPI from one container with a multi-stage Dockerfile |
| MCP Server on the Marketplace | Deploying Example 06 — exposing Gaia to external AI tools |
| Testing & Submission | Local testing, appspec validation, and DevPortal upload |
| Marketplace Checklist | Pre-submission checklist for production-ready apps |
Two Ready-Made Examples¶
This guide is accompanied by two complete example apps you can deploy immediately:
-
Example 05 — Marketplace Chat — Full-stack chat app. Single Docker image, no external dependencies. Users access it through their standard Cohesity login.
-
Example 06 — Marketplace MCP Server — MCP server that exposes Gaia tools to Cursor, Claude Desktop, and other MCP clients. Deployed once; accessible to every AI tool on your network.