# QuickStack QuickStack is a self-hosted platform for running applications on your own infrastructure. Deploy web apps, databases, and more with ease, while maintaining full control and security. # Features ## Deploy Get apps running without manual container orchestration. - Deploy from any Git repository (public or private) - Deploy from any container registry - One-click database deployments from templates - Automatic domain setup and HTTPS via Let's Encrypt - Webhook-triggered auto-deploys on push ## Operate See what is running and fix problems without SSH gymnastics. - Real-time log streaming per container - Integrated web terminal for direct container access - CPU, RAM, and disk metrics per app - Health checks and restart policies - Scheduled backups ## Scale Grow from a single VPS to a multi-node cluster without rearchitecting. - Add nodes to form a cluster at any time - Cluster-wide persistent storage volumes (Longhorn) - Automatic load balancing across nodes - quickstack.me instant subdomains for fast preview access - Internal service networking between apps ## Secure Control who can access what, down to the project level. - User and group management - Granular per-project permissions - Two-factor authentication (2FA) - Network policies to isolate services - Basic authentication for exposed endpoints # How It Works ### 01. Install on a fresh server One command sets up the whole platform on your VPS or bare-metal box. ```bash curl -sfL https://get.quickstack.dev/setup.sh | sh - ``` ### 02. Connect a repo or image Point QuickStack at any Git repository, or pull from Docker Hub and private registries. Pick a database template for one-click Postgres, MySQL, MongoDB, MariaDB or Redis. ### 03. Deploy — the rest is handled QuickStack builds, provisions a domain, issues HTTPS, starts the container and gives you logs, terminal, metrics and backups in the same UI. # Use Cases ### Small teams that want a Heroku-like DX Push-to-deploy, automatic HTTPS, env vars, logs and backups — on infrastructure you control, without anyone learning cluster management. Tags: Team access, Permissions, Backups ### DevOps engineers who want control Comfortable with servers but tired of gluing together Traefik, Compose and shell scripts. QuickStack is a structured platform you can extend — with clusters when you scale. Tags: Multi-node cluster, Network policies, Registry support ### Indie developers & side projects You have a VPS and want to ship without cloud PaaS prices or managing Kubernetes by hand. QuickStack gives you deploy-from-Git without the lock-in or monthly bill. Tags: Single server, Git deploy, Low cost # Frequently Asked Questions **Do I need Kubernetes knowledge to use QuickStack?** No. QuickStack runs on k3s under the hood, but you interact entirely through a web UI. You do not write Kubernetes manifests or run kubectl commands for day-to-day operations. **Can I deploy from Git repositories and Docker images from Docker Hub?** Yes. QuickStack supports both. You can connect a Git repository (GitHub, GitLab, or any other Git host) and trigger builds on push via webhooks, or you can pull an image directly from Docker Hub or a private container registry. **Does QuickStack handle HTTPS automatically?** Yes. QuickStack provisions SSL certificates via Let's Encrypt automatically when you add a domain. You do not need to configure Traefik, Nginx, or Certbot manually. **Can I run databases?** Yes. QuickStack includes database templates for PostgreSQL, MySQL, Redis, and others. You can deploy a database instance with one click and connect it to your apps using internal service networking. **How do backups work?** QuickStack supports scheduled backups for both application volumes and databases. Backups can be stored on S3-compatible object storage. You can restore from any backup directly through the UI. **Is QuickStack suitable for teams?** Yes. QuickStack includes user and group management with granular per-project permissions, and supports two-factor authentication. You can give team members access to specific projects without giving them full admin access. **Can I start on one server and scale to a cluster later?** Yes. QuickStack runs on a single server and supports adding nodes to form a multi-node cluster. Persistent storage volumes are managed by Longhorn and are accessible across all nodes in the cluster. **Is QuickStack open source?** Yes. QuickStack is open source and available on GitHub. It is licensed under the GPL-3.0 license. Contributions and feedback are welcome! # Docs - [QuickStack Docs](/docs): QuickStack is a simple Web UI to manage your Linux server and deploy your containerized applications. - Tutorials: undefined - [QuickStack Installation](/docs/tutorials/installation): QuickStack installation: fastest path to a working QuickStack instance. - [Deploy Your First App from Git](/docs/tutorials/first-app-from-git): Deploy an application directly from a Git repository using QuickStack. - [Deploy Your First App from a Docker Image](/docs/tutorials/first-app-from-image): Deploy a Docker image from Docker Hub or any container registry using QuickStack. - [Expose an App (Domain + HTTPS)](/docs/tutorials/expose-app): Add a custom domain and enable HTTPS for your QuickStack application. - How To: undefined - Deployments: undefined - [Deploy & Redeploy](/docs/how-to/deployments/redeploy-and-rollbacks): How deployment works in QuickStack: when changes take effect, environment variables, and common gotchas. - [Build Methods](/docs/how-to/deployments/build-methods): Choose between Railpack (zero-config, auto-detect) and Dockerfile build methods for Git-based apps in QuickStack. - [Webhooks & Auto-deploy](/docs/how-to/deployments/webhooks-auto-deploy): Configure webhooks to trigger automatic deployments from GitHub, GitLab, or any CI system. - Networking: undefined - [Networking & Policies](/docs/how-to/networking): How apps and databases communicate inside a project, and how to control traffic with network policies. - [Custom Domains](/docs/how-to/networking/domains): Configure custom domains and automatic HTTPS for your QuickStack applications. - [QuickStack.me Domain](/docs/how-to/networking/quickstack-me): Use the built-in quickstack.me domain service for instant HTTPS access without manual DNS configuration. - [Basic Authentication](/docs/how-to/networking/basic-auth): Protect your QuickStack applications with HTTP Basic Authentication via Traefik middleware. - [Node Ports](/docs/how-to/networking/node-ports): Expose non-HTTP application ports directly on cluster nodes using Kubernetes NodePorts for TCP/UDP workloads. - Storage: undefined - [Volumes](/docs/how-to/storage/volumes): Configure persistent storage volumes for your QuickStack applications: storage classes, access modes, node affinity, and gotchas. - [File Mounts](/docs/how-to/storage/file-mounts): Inject read-only configuration files into your QuickStack containers using file mounts. - Observability: undefined - [Logs & Terminal](/docs/how-to/observability/logs-and-terminal): Use the built-in log viewer and interactive terminal to monitor and debug running QuickStack applications. - [Builds Overview](/docs/how-to/observability/builds-overview): Monitor and manage all active and recent build jobs across every project from a single page. - [Health Checks](/docs/how-to/observability/health-checks): Configure Kubernetes liveness, readiness, and startup probes for your QuickStack applications. - Databases: undefined - [Deploy Databases](/docs/how-to/databases/deploy-databases): Deploy pre-configured databases (PostgreSQL, MySQL, MariaDB, MongoDB) from QuickStack templates. - [Database Tools (DbGate, pgAdmin, phpMyAdmin)](/docs/how-to/databases/db-tools): Enable and use built-in database GUI tools in QuickStack: DbGate, pgAdmin, and phpMyAdmin. - Backups: undefined - [Backups Overview](/docs/how-to/backups/overview): Overview of QuickStack's backup model: what gets backed up, how backups work, and where to find them. - [S3 Targets](/docs/how-to/backups/s3-targets): Configure S3-compatible storage targets for QuickStack backup destinations. - [Volume Backups](/docs/how-to/backups/volume-backups): Schedule automated backups for QuickStack application volumes to S3-compatible storage. - [Database Backups](/docs/how-to/backups/database-backups): Schedule automated database dump backups for MariaDB, PostgreSQL, and MongoDB in QuickStack. - [System Backups](/docs/how-to/backups/system-backups): Back up and restore the QuickStack system configuration (SQLite database) including projects, users, and app settings. - Admin: undefined - [Two-Factor Authentication (2FA)](/docs/how-to/admin/two-factor-auth): Enable TOTP two-factor authentication for your QuickStack account. - [Users & Groups](/docs/how-to/admin/users-and-groups): Manage users, groups, and per-project permissions in QuickStack. - [Single Sign-On (SSO)](/docs/how-to/admin/single-sign-on): Let users sign in to QuickStack through an external identity provider such as OIDC, Google, Entra ID, or GitHub. - [Cluster Monitoring](/docs/how-to/admin/cluster-monitoring): Monitor CPU, RAM, and disk usage across QuickStack cluster nodes. - [Updates & Maintenance](/docs/how-to/admin/updates-and-maintenance): Update QuickStack, manage disk space, and perform k3s cluster upgrades. - [Cluster Add-ons](/docs/how-to/admin/cluster-add-ons): Install, update, and remove cluster components such as Longhorn and CertManager from the QuickStack UI. - [Cluster Nodes](/docs/how-to/admin/cluster-nodes): Add and remove worker nodes, manage scheduling, and monitor node health in your QuickStack cluster. - [Build Container Settings](/docs/how-to/admin/build-container-settings): Configure global node placement and resource limits for QuickStack build containers. - [Password Reset](/docs/how-to/admin/password-reset): Reset the QuickStack admin password using the reset script. - REST API: undefined - [REST API overview](/docs/rest-api/overview): Use the QuickStack REST API to manage app workloads programmatically. - [Authentication](/docs/rest-api/authentication): Create and use REST API keys for the QuickStack API. - [JavaScript & TypeScript SDK](/docs/rest-api/javascript-typescript-sdk): Use the official QuickStack JavaScript and TypeScript SDK for app workloads. - Reference: undefined - [Ports & Endpoints](/docs/reference/ports-and-endpoints): Reference for QuickStack ports, webhook URL pattern, and internal service hostnames. - [Glossary](/docs/reference/glossary): Glossary of QuickStack-specific terms and the key underlying technologies.