# Tenkai

> Tenkai turns any server you own into a deployment platform, from a cloud VPS to the Raspberry Pi on your shelf.

The guides of the Help Center explain how Tenkai works and how a team deploys and runs its applications with it.
Each one is Markdown at its address with `.md` appended, and [llms-full.txt](https://tenkai.cloud/llms-full.txt) holds them all.

A coding agent, such as Claude Code, Codex or Cursor, works in Tenkai through its MCP server at https://tenkai.cloud/mcp, and signs in with OAuth. The guide on [agent tokens](https://tenkai.cloud/help/agent-tokens.md) explains how to connect one.

## Get started

- [What is Tenkai?](https://tenkai.cloud/help/what-is-tenkai.md): Understand where Tenkai runs your applications, how a server becomes a deployment platform and what you remain responsible for.
- [Deploy your first application](https://tenkai.cloud/help/first-deployment.md): Deploy your first web application on Tenkai from a public container image, configure its runtime port and check the HTTPS route.
- [Projects, environments and clusters](https://tenkai.cloud/help/projects-and-clusters.md): Understand how Tenkai groups resources, prepares clusters and creates the production environment for your project.
- [Your team and its settings](https://tenkai.cloud/help/team-settings.md): See what a team owns, create a team and switch between your teams, rename it, change its icon, choose what a new cluster starts with, and read what each team role may do.
- [Plans and billing](https://tenkai.cloud/help/billing.md): See how many servers each plan allows, subscribe, upgrade or switch to a lower plan, change the card, read the invoices and cancel the subscription.
- [Your account](https://tenkai.cloud/help/account.md): Change your password, sign in with GitHub, choose the theme, and find the credentials that belong to you rather than to a team.
- [Read your team's overview](https://tenkai.cloud/help/overview.md): Find what needs you across your team, from agent requests to failed deployments, and follow each cluster's load and each project's traffic.
- [Compare Tenkai with Coolify and Dokploy](https://tenkai.cloud/help/compare-coolify-dokploy.md): See what Coolify and Dokploy leave to you in production, from the cluster to database failover, backups and your app versions.

## How Tenkai works

- [How Tenkai runs your applications](https://tenkai.cloud/help/how-tenkai-works.md): See what Tenkai does from its control plane, what runs on your servers and how a deployment reaches them.
- [Clusters and the roles of their nodes](https://tenkai.cloud/help/clusters.md): Understand the edge node, manager nodes, worker nodes and data nodes, how many failures a cluster survives, and how replicas spread across nodes.
- [Run servers anywhere with the cluster network](https://tenkai.cloud/help/cluster-network.md): Mix Hetzner Cloud, DigitalOcean, Scaleway, Infomaniak Public Cloud and your own hardware in one cluster, linked by an encrypted WireGuard mesh.
- [How traffic reaches your application](https://tenkai.cloud/help/edge-node.md): Follow a request from DNS to the edge node, through HTTPS and the edge router, to a replica on any node of the cluster.
- [How a deployment switches traffic](https://tenkai.cloud/help/blue-green-deployments.md): See how a blue-green deployment starts a candidate next to the active release, checks it, then moves the routes to it.
- [How a drain moves your applications](https://tenkai.cloud/help/drain.md): See how Tenkai moves each web application and each worker off a node before maintenance or removal, and what cannot move.

## Applications

- [Choose an application source](https://tenkai.cloud/help/application-sources.md): Deploy from a Git repository with a Dockerfile, build from source, use a container image from Docker Hub or GHCR, or send a static site's files.
- [Configure variables and the runtime port](https://tenkai.cloud/help/variables.md): Configure environment and resource variables, protect credentials and choose the port your HTTP server listens on.
- [How to deploy a single-page application from GitHub Actions](https://tenkai.cloud/help/deploy-single-page-application.md): Build a Vite, React or Vue application in your CI, send its files to a static site's deploy hook and choose how a missing path answers.
- [Pull a private GHCR image](https://tenkai.cloud/help/pull-private-ghcr-image.md): Create a GitHub token for GHCR, add it as your GHCR credential, link it to a resource and replace it before it expires.
- [Build an image in GitHub Actions and publish it to GHCR](https://tenkai.cloud/help/publish-image-ghcr.md): Build your Dockerfile in GitHub Actions, publish the image to GHCR for your cluster's architecture and deploy each new version.
- [Deploy from a pipeline with a deploy hook](https://tenkai.cloud/help/deploy-hook.md): Enable an application's deploy hook, call it from GitHub Actions or any CI tool, wait for the deployment to end, and rotate or revoke its secret.
- [Deploy each push to GitHub](https://tenkai.cloud/help/deploy-on-push.md): Turn on deploy on push for an application built from a GitHub repository, follow each deployment beside its commit, and know what happens to pushes during a deployment.
- [Preview each pull request](https://tenkai.cloud/help/pull-request-previews.md): Turn on pull request previews for a project, so each pull request gets its own environment, deployed on each push and deleted once it closes.
- [Run a command before a deployment or a rollback](https://tenkai.cloud/help/deployment-commands.md): Give a web application pre-deploy commands for its database migrations and rollback commands to undo them, and know when each runs and what a failure does.
- [Run background work with a worker](https://tenkai.cloud/help/workers.md): Create a worker for a queue consumer or another background process, set its entrypoint and replicas, deploy it and roll it back.
- [Run a command on a schedule with a scheduled job](https://tenkai.cloud/help/scheduled-jobs.md): Create a scheduled job, write its schedule as a cron expression in UTC, deploy it, and know how your cluster starts its runs while Tenkai is down.
- [Keep a web application's files](https://tenkai.cloud/help/keep-files.md): Ask a web application to keep a directory between two deployments, in a volume on one node of your cluster, and know what that changes for it.
- [Install an app from the marketplace](https://tenkai.cloud/help/marketplace.md): Install a ready-made app such as Umami or WordPress into a project, with the web application, the database and the kept files it needs, and see what to do when it does not start.
- [Read a web application's traffic](https://tenkai.cloud/help/web-traffic.md): See a web application's requests by status class over time, what counts as a request and what a gap in the chart means.

## Framework guides

- [How to deploy a Node.js application with Docker](https://tenkai.cloud/help/deploy-nodejs.md): Write a production Dockerfile with npm for a Node.js HTTP application, stop it gracefully, publish the image from your CI and verify its HTTPS route.
- [How to deploy an AdonisJS application to production](https://tenkai.cloud/help/deploy-adonisjs.md): Package an AdonisJS 7 application in a Docker image, set APP_KEY, run its migrations with --force before it takes traffic and connect it to PostgreSQL.
- [How to deploy a Next.js app to a VPS](https://tenkai.cloud/help/deploy-nextjs.md): Build a Next.js 16 app with the standalone output, set NEXT_PUBLIC_ variables at build time, read the others at runtime and run it in Docker.
- [How to deploy a Nuxt app to a VPS](https://tenkai.cloud/help/deploy-nuxt.md): Build a Nuxt 4 app into its own Node.js server, override its runtime config with NUXT_ variables when it starts and run it in Docker.
- [How to deploy SvelteKit to a VPS with adapter-node](https://tenkai.cloud/help/deploy-sveltekit.md): Build a SvelteKit 3 app with adapter-node, declare its environment variables in src/env.ts, keep runtime packages in dependencies and run it in Docker.
- [How to deploy a Laravel application with FrankenPHP](https://tenkai.cloud/help/deploy-php-frankenphp.md): Package a Laravel application with FrankenPHP, connect it to PostgreSQL, publish the image from your CI and run its migrations before each deployment takes traffic.
- [How to deploy Django to a VPS with Gunicorn](https://tenkai.cloud/help/deploy-django.md): Serve a Django 6 project with Gunicorn and WhiteNoise in Docker, run collectstatic in the image and migrations before traffic, and connect it to PostgreSQL.
- [How to deploy a Rails 8 app to a VPS](https://tenkai.cloud/help/deploy-rails.md): Use the Dockerfile Rails 8 generates without Kamal, keep its cache, queue and cable tables in one PostgreSQL database and migrate before traffic.

## Managed services

- [Create a managed service](https://tenkai.cloud/help/managed-services.md): Create PostgreSQL, MySQL, Redis® or Valkey, bind an application, back it up and understand storage and recovery limits.
- [Back up and restore a database](https://tenkai.cloud/help/backups.md): Send encrypted backups of a database, or of a web application that keeps files, to your own storage bucket, restore one, create a database from it and read it without Tenkai.
- [Keep a PostgreSQL writable when a node fails](https://tenkai.cloud/help/high-availability.md): Learn what high availability for a PostgreSQL protects against, what it costs and needs from a cluster, and why it does not replace backups.
- [Host buckets on a cluster](https://tenkai.cloud/help/object-storage.md): Run an S3-compatible storage on a node of your cluster, give a web application its own bucket and keys, and know what happens to the files when the node is lost.

## Domains & HTTPS

- [Connect a custom domain](https://tenkai.cloud/help/custom-domain.md): Connect your domain to a Tenkai web application with a CNAME or an A record, and verify automatic HTTPS.
- [Expose a TCP port, such as SSH](https://tenkai.cloud/help/tcp-port.md): Let clients outside the cluster reach a web application's TCP port, such as SSH to clone and push to a Git host.

## Servers & clusters

- [Connect a server provider](https://tenkai.cloud/help/server-providers.md): Create a token for Hetzner Cloud or DigitalOcean, a secret key and a project ID for Scaleway, or an application credential for Infomaniak Public Cloud, with the permissions Tenkai needs, then connect it.
- [Log in to a server with SSH](https://tenkai.cloud/help/ssh-access.md): Add or generate an SSH key, authorize it on your team's servers and log in as root, then revoke it when it should no longer work.
- [How much memory a server needs](https://tenkai.cloud/help/server-size.md): See the memory Tenkai keeps on each node for the system, builds and its own services, why it keeps it, and what is left for your applications.
- [Manage a cluster's nodes](https://tenkai.cloud/help/cluster-nodes.md): Add a node, make a cluster highly available, drain or resume a node, remove a worker node, and choose whether new servers get the Tenkai Agent.
- [The etcd of a cluster](https://tenkai.cloud/help/cluster-etcd.md): What etcd does for a PostgreSQL with high availability, what it reserves on the manager nodes, how to read its state on the cluster page, and what it changes for a reboot or a drain.
- [Update and reboot a server](https://tenkai.cloud/help/server-upkeep.md): Read a server's upkeep report, install its package updates, reboot it without surprise and open a root terminal from Tenkai.

## Coding agents

- [Let a coding agent operate Tenkai](https://tenkai.cloud/help/agent-tokens.md): Sign in from Claude Code, Cursor or another MCP client, or create an agent token for an agent that cannot, and approve the deployments and servers the agent asks for.

## Troubleshooting

- [Find what was changed outside Tenkai](https://tenkai.cloud/help/runtime-drift.md): Learn what a runtime drift on a web application or a worker is, what Tenkai compares with the running service and how to put back what Tenkai records.
- [See what needs attention with health](https://tenkai.cloud/help/health.md): See failed deployments, custom domains that are not ready, services changed outside Tenkai, disks almost full and servers that need an update or a reboot.
- [Diagnose deployment and HTTPS failures](https://tenkai.cloud/help/troubleshooting.md): Read a deployment's logs and find the next check for a failed build, an application that does not respond, incorrect DNS or an HTTPS verification failure.
- [Read a resource's logs and open a terminal in it](https://tenkai.cloud/help/resource-logs-and-terminal.md): Follow what the containers of a web application or a managed service write, search it, and open a shell inside a running replica.

## Learn: Where to host

- [Shared hosting, VPS, dedicated server or PaaS?](https://tenkai.cloud/learn/shared-hosting-vps-dedicated-server-paas.md): Compare the work, price, performance and freedom of shared hosting, PaaS and your own VPS or dedicated servers, and what Tenkai handles there.

## Learn: Running applications

- [Load balancing and replicas](https://tenkai.cloud/learn/load-balancing-replicas.md): See how Tenkai spreads a web application's requests across its replicas, what happens when one stops, and what replicas do not protect against.
- [Workers and scheduled jobs next to your application](https://tenkai.cloud/learn/workers-scheduled-jobs.md): See where a worker and a scheduled job run next to a web application in Tenkai, how a schedule starts a run, and what happens when one fails or overlaps.
- [Blue-green deployments](https://tenkai.cloud/learn/blue-green-deployments.md): See how Tenkai starts a web application's new version next to the old one, moves the traffic once it is healthy, and why an application that keeps files stops first.
- [How DNS, the edge node and HTTPS bring a request to your application](https://tenkai.cloud/learn/dns-edge-node-https.md): Follow a browser request to your application. See how DNS, the edge node and HTTPS work together, and how Tenkai manages certificates.
- [Why a volume keeps an application on one cluster node](https://tenkai.cloud/learn/volumes-on-a-cluster.md): See how Tenkai keeps a web application's files in a volume on one node, what that means for its replicas, deployments and drains, and when object storage suits better.

## Learn: Databases

- [What size does my database need?](https://tenkai.cloud/learn/managed-service-size.md): Estimate the size of a PostgreSQL, MySQL or Redis® on Tenkai from your data, rows and connections, and see the memory and settings it gets.

## Learn: Clusters of servers

- [How a Tenkai cluster works](https://tenkai.cloud/learn/how-a-cluster-works.md): See how a Tenkai cluster's manager nodes keep their quorum, how many failures 1, 3 or 5 managers survive, and what happens when a node fails or is drained.

## Learn: Keeping data

- [Backups and restore](https://tenkai.cloud/learn/backups-point-in-time-recovery.md): See how encrypted backups reach your storage bucket, what a restore replaces, and how to create a database from a saved copy.
- [Object storage on your cluster with Garage](https://tenkai.cloud/learn/object-storage-garage.md): See how Tenkai runs S3-compatible object storage on your cluster with Garage, how applications and browsers reach its buckets, and how a copy protects the files.

## Learn: Networking

- [Separate production and staging with environments](https://tenkai.cloud/learn/environments.md): See how environments separate application networks and data, and where that separation ends.
- [How Tenkai isolates your networks](https://tenkai.cloud/learn/network-isolation.md): See how Tenkai links servers with WireGuard, what the firewall allows, and how applications reach databases on a private network.

## Learn: Security

- [What Tenkai does to secure your servers](https://tenkai.cloud/learn/server-security.md): See how Tenkai restricts access to a new server, what it checks daily, and which security tasks you still handle.

## Learn: Failures and recovery

- [Disaster recovery and what Tenkai lets you recover](https://tenkai.cloud/learn/disaster-recovery.md): See what keeps running when a replica, a node, a whole cluster or Tenkai itself is lost, and how you bring a database back from a backup in your storage bucket.

## Learn: Size your resources

- [How large should a web application be?](https://tenkai.cloud/learn/web-application-size.md): Estimate the replica count, application size and server capacity you need from peak traffic and CPU time per request.

## Glossary

- [Glossary of hosting and Tenkai](https://tenkai.cloud/learn/glossary): Shared hosting, VPS, Cluster, replica and the other terms of hosting and Tenkai.

## Optional

- [Terms of Use](https://tenkai.cloud/terms)
- [Privacy Policy](https://tenkai.cloud/privacy)
