# Tsuru — Open Source Extensible Platform as a Service > Tsuru is an open-source PaaS that uses Docker and Kubernetes to deploy applications in any language, providing a simple CLI-driven workflow for developers who want platform convenience without vendor lock-in. ## Install Save in your project root: # Tsuru — Open Source Extensible Platform as a Service ## Quick Use ```bash # Install the CLI curl -sL https://tsuru.io/get | bash tsuru target add default https://your-tsuru-api.example.com tsuru login tsuru app create myapp python git push tsuru main ``` ## Introduction Tsuru is an open-source platform as a service that has been in production since 2012. It abstracts away infrastructure complexity so developers can deploy applications with a simple git push, while operations teams maintain full control over the underlying Kubernetes and Docker infrastructure. ## What Tsuru Does - Deploys applications from any language using buildpacks or Dockerfiles - Manages application scaling, routing, and service binding automatically - Provides a CLI and API for all platform operations - Supports multi-team and multi-cluster deployments - Integrates with existing Kubernetes clusters or manages its own ## Architecture Overview Tsuru runs as a Go API server that orchestrates application deployments on Kubernetes. It uses a provisioner abstraction layer that translates platform operations into Kubernetes resources. The router component manages ingress and load balancing. A service broker connects applications to databases, caches, and other backing services. ## Self-Hosting & Configuration - Deploy Tsuru API on an existing Kubernetes cluster using Helm charts - Configure one or more Kubernetes clusters as deployment targets - Set up a router (Traefik or Nginx Ingress) for application traffic - Register service brokers for databases and other managed services - Add build platforms (Python, Go, Node.js, etc.) as Docker images ## Key Features - Multi-language support via buildpacks and custom Dockerfiles - Horizontal and vertical auto-scaling based on metrics - Blue-green and rolling deployment strategies - Service broker integration for managed databases and caches - Multi-cluster support for geographic distribution ## Comparison with Similar Tools - **Heroku** — proprietary PaaS; Tsuru is self-hosted and open source - **Dokku** — single-server PaaS; Tsuru scales across Kubernetes clusters - **CapRover** — simpler PaaS with web UI; Tsuru targets larger team deployments - **Coolify** — modern self-hosted PaaS; Tsuru has a longer production track record ## FAQ **Q: How does Tsuru compare to raw Kubernetes?** A: Tsuru abstracts Kubernetes complexity behind a developer-friendly CLI. Teams get the power of Kubernetes without requiring every developer to learn it. **Q: What languages does Tsuru support?** A: Any language that can run in a Docker container. Built-in buildpacks cover Python, Go, Node.js, Ruby, Java, PHP, and more. **Q: Can Tsuru run on existing Kubernetes clusters?** A: Yes. Tsuru installs on top of existing clusters and can manage multiple clusters from a single API. **Q: Is Tsuru still actively maintained?** A: Yes. Tsuru has been in continuous development since 2012 and is used in production at scale. ## Sources - https://github.com/tsuru/tsuru - https://tsuru.io --- Source: https://tokrepo.com/en/workflows/asset-7498f39f Author: AI Open Source