Skip to main content
Mintlify

Search documentation

Type to search this documentation.

On this pageOverview

Self-host

Run Mintlify inside your own cloud or on-premises environment, on AWS or any Kubernetes platform including Azure, Google Cloud, Oracle Cloud, and OpenShift.

Self-hosting runs Mintlify inside your own cloud account or data center, so your content, build pipeline, analytics, and logs stay within your network boundary. It's designed for teams with data-residency, compliance, or air-gap requirements that a cloud-hosted deployment can't meet.

Every self-hosted deployment is a scoped engagement with your account team, not a self-serve install. This page describes what you provision, how the deployment runs, and the tradeoffs against cloud hosting so you can evaluate self-hosting before committing to it.

Platform Method
Amazon Web Services AWS Cloud Development Kit (CDK) app
Microsoft Azure Helm chart on Azure Kubernetes Service (AKS)
Google Cloud Helm chart on Google Kubernetes Engine (GKE)
Oracle Cloud Helm chart on Oracle Container Engine for Kubernetes (OKE)
Red Hat OpenShift Helm chart
Any Kubernetes Helm chart

Authoring works the same way in both hosting models. Your team maintains content with the editor or their Git workflow, and every change flows through your repository's review process. What changes is who operates the platform and where data resides.

Area Cloud-hosted Self-hosted
Time to launch Same day Scoped engagement, typically weeks
Infrastructure Mintlify operates everything You operate the cluster, network, and data stores. Mintlify ships versioned releases with upgrade guides and supports the application tier
Platform updates Continuous, automatic Versioned releases that you review and deploy on your own schedule
Data boundary Processed in Mintlify's cloud Content, builds, analytics, and logs stay inside your network with no third-party egress
AI features On by default Ship disabled until your security or AI governance team approves them. Can run against your own model endpoint, your own API key, or Mintlify cloud
Integrations Full catalog Integrations that depend on Mintlify cloud services are unavailable
Monitoring Managed by Mintlify You connect your own observability stack

Self-hosted deployments usually start narrow and expand. A common path is to start with public documentation, then add authenticated content, the web editor, and AI features as you complete security reviews.

Everything core to authoring, building, and serving documentation ships in a self-hosted deployment.

Feature Availability Notes
Documentation site Full rendering, components, and theming
Web editor Browser-based authoring
Git-backed workflow GitHub, GitHub Enterprise Server, GitLab including self-managed, Bitbucket, or an internally owned proxy API
Search Runs inside your deployment. The index rebuilds on publish
Authenticated content Access control through your identity provider
Dashboard SSO OIDC or SAML
Analytics Collected and stored inside your network
Third-party analytics and support widgets Configured with your own keys, served from the docs site
Static export Self-contained bundles for air-gapped serving
Versioned releases and rollback Each release pins image versions. Roll back by redeploying the previous version
AI assistant and agent Optional Ships disabled. Runs against your own model endpoint, your own API key, or Mintlify cloud

Only smaller surfaces that depend on Mintlify-operated services are cloud-only: the Slack app, third-party connectors for agent automations, and SDK generation integrations.

A self-hosted deployment is a set of services with clear dependencies. Provision the data stores first, then the services that depend on them, then the edge.

Resource Purpose Required
Load balancer or ingress TLS termination and routing
Docs site Serves rendered documentation
Dashboard and API Admin, auth, and build orchestration
Build workers Build and publish documentation sites
MongoDB Content store
PostgreSQL Project and user metadata
Redis Build queue and caching
Object storage Built site bundles and static exports
Search and indexing Docs search. The index rebuilds on publish
Identity provider OIDC or SAML SSO for the dashboard and authenticated content
AI assistant services Assistant and agent features Optional

Your documentation source can be GitHub, GitHub Enterprise Server, GitLab (including self-managed), or Bitbucket.

If your organization can't grant repository credentials to a third-party service, front your Git hosting with an internally owned proxy API instead. Fully air-gapped environments use static export with no Git connection at all.

As a starting point, a production deployment runs on roughly 45 to 60 vCPU, 160 to 220 GB of memory, and about 1 TB of solid-state storage across services. Non-production environments run at about half that. Your account team sizes the deployment with you based on page count, traffic, and which features you enable.

AWS deployments use an AWS CDK app that provisions and updates the full stack in your account. The CDK app pins container images to specific versions, so every deployment is reproducible and reviewable.

What you provide

ComponentRequirementNotes
ComputeAmazon ECS clusterRuns the Mintlify services
Content storeAmazon DocumentDBMongoDB-compatible
Metadata storeAmazon RDS for PostgreSQLProject and user metadata
Cache and queueAmazon ElastiCache for RedisBuild queue and caching
Object storageAmazon S3Built site bundles and static exports
CDNAmazon CloudFrontServes the docs site at the edge
NetworkingVPC with public and private subnets, Application Load BalancerIsolates workloads
TLS and DNSAWS Certificate Manager, Amazon Route 53HTTPS and routing for your domain
SecretsAWS Secrets ManagerDatabase credentials and signing secrets
IdentityOIDC or SAML providerDashboard SSO

Setup

  1. Scope the deployment

    Your account team reviews your network topology, Git hosting, identity provider, and compliance requirements, then delivers the CDK app and access to versioned container images.

  2. Configure and deploy

    Set your domain, certificate, and networking in the CDK context, review the change set, and deploy.

    Bash
    cdk diff
    cdk deploy --all
  3. Connect Git and SSO

    Grant the deployment access to your documentation repositories and connect your identity provider.

  4. Cut over

    Verify builds and search on your staging domain, then point your production DNS at the deployment.

Kubernetes deployments use the Mintlify enterprise Helm chart and run on any certified Kubernetes cluster. The same chart covers managed Kubernetes on any cloud and on-premises clusters:

  • Azure: AKS, with Microsoft Entra ID for SSO and Azure managed data services.
  • Google Cloud: GKE, with Cloud SQL, Memorystore, and Cloud Storage.
  • Oracle Cloud: OKE, with OCI managed databases and OCI Object Storage.
  • OpenShift: ships OpenShift-compatible security contexts and uses Routes for ingress.

What you provide

ComponentRequirementNotes
ClusterKubernetes or OpenShift clusterHosts the Helm release
Content storeMongoDBManaged or in-cluster
Metadata storePostgreSQLManaged or in-cluster
Cache and queueRedisBuild queue and caching
Object storageS3-compatible bucketBuilt site bundles and static exports
IngressIngress controller or OpenShift Route with TLSServes HTTPS. A WAF in front is recommended
RegistryPrivate container registryHosts the delivered images
IdentityOIDC or SAML providerDashboard SSO

Setup

  1. Scope the deployment

    Your account team reviews your cluster, Git hosting, identity provider, and compliance requirements, then delivers the Helm chart, a values template, and versioned container images for your registry.

  2. Provision data stores

    Stand up MongoDB, PostgreSQL, Redis, and object storage, managed by your cloud provider or in-cluster.

  3. Configure and install

    Point the values file at your data stores, ingress, and registry, then install the release.

    Bash
    helm upgrade --install mintlify ./mintlify-enterprise \
      --namespace mintlify --create-namespace -f values.yaml
  4. Connect Git and SSO, then cut over

    Grant the deployment access to your documentation repositories, connect your identity provider, verify on staging, and point production DNS at the deployment.

Platform updates and content updates move independently. You control when the platform changes, and your documentation stays current on its own.

Mintlify ships versioned releases with upgrade guides and release notes from your account team. Each release pins specific image versions, so you can test a release in a non-production environment before deploying it and roll back to the previous version if needed.

AWS
# review the change set for the new release, then roll it out
cdk diff
cdk deploy --all
Kubernetes
# upgrade to a delivered release, or roll back
helm upgrade mintlify ./mintlify-enterprise \
  --namespace mintlify -f values.yaml
helm rollback mintlify

Updates roll out with no downtime. New tasks or pods start, pass health checks, and replace the old ones.

Content flows through your Git source, not through platform releases. When you push to your documentation repository, the build workers rebuild the site and publish it to object storage automatically. Content changes never require a platform deploy.

Environments with no Git webhook path serve documentation as static export bundles. Self-contained builds of your site are published to object storage and served through your CDN. Regenerate the bundle when content changes, or automate the loop with a GitHub Action. AI features that require outbound network access are disabled in air-gapped deployments.

Suggest an edit

Propose a replacement for this page. The site team reviews it before applying any changes.

Export
Documentation menu