diff --git a/apps/website/app/self-hosted-paas/page.tsx b/apps/website/app/self-hosted-paas/page.tsx new file mode 100644 index 0000000..5426643 --- /dev/null +++ b/apps/website/app/self-hosted-paas/page.tsx @@ -0,0 +1,553 @@ +import { Container } from "@/components/Container"; +import { + Accordion, + AccordionContent, + AccordionItem, + AccordionTrigger, +} from "@/components/ui/accordion"; +import AnimatedGridPattern from "@/components/ui/animated-grid-pattern"; +import { Button } from "@/components/ui/button"; +import { + Wallet, + Unlock, + Lock, + Settings2, + KeyRound, + ScrollText, + Shield, + LifeBuoy, + ServerCog, + TerminalSquare, + MonitorSmartphone, + GitBranch, + CheckCircle2, + Cloud, + Server, +} from "lucide-react"; +import Link from "next/link"; +import type { Metadata } from "next"; + +export const metadata: Metadata = { + title: "The Self-Hosted PaaS Built for Developers", + description: + "Start using Dokploy, the free, open source PaaS that enables developers to deploy apps and databases on their own infrastructure.", + alternates: { + canonical: "https://dokploy.com/self-hosted-paas", + }, +}; + +const controlFeatures = [ + { + icon: Wallet, + title: "Save on infrastructure costs", + description: + "Run Dokploy on any VPS or bare metal server you already own. No per-seat fees, no per-deployment charges—just your underlying infrastructure costs.", + }, + { + icon: Unlock, + title: "Eliminate vendor lock-in", + description: + "Your apps, your servers, your data. A self-hosted PaaS gives you full control over where workloads run and makes it straightforward to migrate if your needs change.", + }, + { + icon: Lock, + title: "Keep sensitive data on your own servers", + description: + "For teams with compliance requirements or strict data residency rules, self-hosting means your code and databases never leave your own infrastructure.", + }, + { + icon: Settings2, + title: "Customize to your exact requirements", + description: + "SSH access, custom Docker images, environment variables, resource limits, and container orchestration settings—all configurable without waiting on a cloud provider.", + }, +]; + +const enterpriseFeatures = [ + { + icon: KeyRound, + title: "SSO / SAML", + description: + "Integrate with enterprise identity providers like Okta and Azure AD for centralized, secure access control across your organization.", + }, + { + icon: ScrollText, + title: "Audit Logs", + description: + "Comprehensive tracking of all system activities—deployments, config changes, and access events—for compliance and accountability.", + }, + { + icon: Shield, + title: "Fine-Grained RBAC", + description: + "Granular role-based access controls with custom roles, so the right people have the right permissions at every level.", + }, + { + icon: LifeBuoy, + title: "Priority Support and SLAs", + description: + "Dedicated support with guaranteed response times and service level agreements, so mission-critical deployments stay running.", + }, +]; + +const setupSteps = [ + { + number: "01", + icon: ServerCog, + title: "Provision a server", + description: + "Spin up any Linux VPS from a cloud provider of your choice, or use hardware you already own. Dokploy has minimal overhead and runs comfortably on modest specs.", + }, + { + number: "02", + icon: TerminalSquare, + title: "Run one install command", + description: + "Install Dokploy with a single command. Docker is the only prerequisite, the installer handles the rest in just a few commands.", + }, + { + number: "03", + icon: MonitorSmartphone, + title: "Open the web UI", + description: + "Once installed, open the Dokploy web UI in your browser, create your admin account, and you're in. No complex cluster setup, no Kubernetes complexity.", + }, + { + number: "04", + icon: GitBranch, + title: "Connect your code and deploy", + description: + "Connect a Git repo or container registry, configure your environment variables, add a database, attach a domain, and deploy. The whole process takes minutes.", + }, +]; + +const selfHostedBullets = [ + "Free to install and run, with no platform fees", + "Full control over the underlying infrastructure", + "SSH access and unrestricted server management", + "Fits air-gapped, on-premise, or hybrid environments", + "Deploy on any cloud provider or your own hardware", +]; + +const cloudBullets = [ + "Managed uptime for the control plane", + "Automatic updates—always on the latest version", + "Direct email, chat, and priority support", + "Rapid setup with no server provisioning required", + "Plans from $4.50/mo per server", +]; + +const faqs = [ + { + question: "What is a self-hosted PaaS?", + answer: ( + <> +

+ A self-hosted PaaS is a platform as a service that you run on your own + infrastructure rather than using a managed cloud service. It gives + developers the same deployment experience—Git-based deploys, + environment variable management, built-in Docker support, load + balancing, and database management—but without handing control to a + third-party cloud provider. +

+

+ Dokploy is an open source PaaS you can install on any server with a + single command. +

+ + ), + }, + { + question: "What is the best open source PaaS?", + answer: ( + <> +

+ The best open source PaaS depends on your team size, technical + requirements, and how much infrastructure management you want to take + on. +

+

+ Dokploy is a strong open source PaaS alternative to Heroku and similar + hosted platforms. It supports application deployment, Docker Compose, + MySQL and other databases, Heroku Buildpacks, multi-server management, + and enterprise features like SSO and audit logs. +

+

+ It's free to self-host, actively maintained, and designed to keep + ops overhead minimal. +

+ + ), + }, + { + question: "Is Dokploy really free to self-host?", + answer: ( +

+ Yes. The open source version of Dokploy is free to install and run on + your own servers. You pay only for the infrastructure you provision, + meaning no per-seat or per-deployment fees. Dokploy Cloud plans start at + $4.50 per server per month if you prefer managed uptime. +

+ ), + }, + { + question: "What's the difference between Dokploy Cloud and self-hosted?", + answer: ( +

+ Both versions are functionally identical. Every feature available in + self-hosted is also available in Cloud, and vice versa. The difference + is purely operational: with self-hosted, you manage the Dokploy instance + itself, including updates and uptime. With Cloud, Dokploy manages the + control plane for you. Your applications always run on your own servers + in both cases. +

+ ), + }, + { + question: "Does Dokploy support multi-tenancy?", + answer: ( +

+ Yes. Dokploy includes multi-tenancy support via organizations and + projects, with role-based access controls that let you manage + permissions across teams. Enterprise plans include fine-grained RBAC and + custom roles for more complex access requirements. +

+ ), + }, + { + question: "What infrastructure does Dokploy support?", + answer: ( +

+ Dokploy runs on any Linux server—a VPS from any cloud provider, bare + metal, or even a Raspberry Pi for testing. It uses Docker Swarm for + container orchestration and Traefik as a reverse proxy, so you get load + balancing, SSL, and routing out of the box without managing those layers + yourself. +

+ ), + }, +]; + +const INSTALL_COMMAND = "curl -sSL https://dokploy.com/install.sh | sh"; + +export default function SelfHostedPaasPage() { + return ( +
+ {/* Hero Section */} +
+ + +
+

+ The Self-Hosted PaaS Built for Developers +

+

+ Dokploy is a free, open source PaaS that enables developers to + deploy apps and databases on their own infrastructure. Full + control, no vendor lock-in, and none of the Kubernetes complexity. + Install it with a single command and start deploying in minutes. +

+
+ + +
+ + {/* Install command */} +
+

+ Deploy with one line of code +

+
+ $ + + {INSTALL_COMMAND} + +
+
+
+
+
+ + {/* Full control over your platform */} +
+ +
+

+ Full control over your platform +

+

+ Self-hosting a PaaS solution means you decide where your + infrastructure lives, how resources are allocated, and who has + access—without paying for a managed service to make those + decisions for you. +

+
+
+ {controlFeatures.map((feature) => ( +
+
+ +
+

{feature.title}

+

+ {feature.description} +

+
+ ))} +
+
+
+ + {/* Self-Hosted Enterprise PaaS */} +
+ +
+

+ Self-Hosted Enterprise PaaS +

+

+ For organizations that need more than the open source version, + Dokploy Enterprise adds the security, compliance, and support + features that larger teams require, deployable on-premises or in + your own cloud, with no external dependencies. +

+
+ +
+
+
+

+ What you get with Dokploy Enterprise +

+
+ {enterpriseFeatures.map((feature) => ( +
+
+ +
+

+ {feature.title} +

+

+ {feature.description} +

+
+ ))} +
+
+
+
+ + {/* How to get set up */} +
+ +
+

+ How to get set up with self-hosted Dokploy +

+

+ Getting a self-hosted PaaS running doesn't have to be an + infrastructure project. Dokploy is designed for minimal overhead, + so you can go from a blank server to a running deployment platform + in under ten minutes. +

+
+
+ {setupSteps.map((step) => ( +
+
+ {step.number} +
+
+ +
+

{step.title}

+

+ {step.description} +

+
+ ))} +
+
+
+ + {/* Should you choose Cloud or Self-Hosted? */} +
+ +
+

+ Should you choose Cloud or Self-Hosted? +

+

+ Both are great options. Every key feature available in + Self-Hosted is also available in Cloud, and vice versa. The choice + comes down to how much you want to manage yourself. +

+
+
+
+
+ +
+

Self-Hosted

+

+ Choose Self-Hosted if you want zero cost beyond your server + bills, full control over everything, or need to run Dokploy in + an air-gapped or private network. +

+
    + {selfHostedBullets.map((bullet) => ( +
  • + + {bullet} +
  • + ))} +
+
+
+
+ +
+

+ Dokploy Cloud +

+

+ Choose Cloud if you'd rather not maintain the Dokploy + instance itself. Your apps still run on your own servers — + Dokploy manages the control plane for you. +

+
    + {cloudBullets.map((bullet) => ( +
  • + + {bullet} +
  • + ))} +
+
+
+
+
+ + {/* One product, two ways to run the control plane */} +
+ +
+

+ One product, two ways to run the control plane +

+

+ Dokploy's deployment engine is identical in both options. The + only difference is where the control plane—the UI, PostgreSQL + database, and Redis instance—runs. +

+
+
+
+
+ +
+

Self-Hosted

+

+ Everything runs on your server. Full control, zero external + dependencies. +

+
+
+
+ +
+

Dokploy Cloud

+

+ Your apps keep running independently even if the Cloud control + plane is temporarily unavailable. +

+
+
+
+
+ + {/* CTA */} +
+ +
+

+ Your own PaaS, up and running today +

+

+ Dokploy is free to self-host and takes just a few commands to + install. Create your account, follow the setup guide, and + you'll have a fully functional open source PaaS running on + your own infrastructure in minutes. +

+
+ +
+
+
+
+ + {/* FAQs */} +
+ +
+

+ Self-hosted PaaS FAQs +

+
+ + {faqs.map((faq, index) => ( + + + {faq.question} + + {faq.answer} + + ))} + +
+
+
+ ); +} diff --git a/apps/website/app/sitemap.ts b/apps/website/app/sitemap.ts index 8c42544..ad9ed84 100644 --- a/apps/website/app/sitemap.ts +++ b/apps/website/app/sitemap.ts @@ -7,6 +7,7 @@ const corePages: { path: string; priority: number }[] = [ { path: "/pricing", priority: 0.9 }, { path: "/enterprise", priority: 0.9 }, { path: "/deploy-ai", priority: 0.8 }, + { path: "/self-hosted-paas", priority: 0.8 }, { path: "/contact", priority: 0.7 }, { path: "/partners", priority: 0.6 }, { path: "/changelog", priority: 0.6 }, diff --git a/apps/website/components/Footer.tsx b/apps/website/components/Footer.tsx index a727545..4633146 100644 --- a/apps/website/components/Footer.tsx +++ b/apps/website/components/Footer.tsx @@ -22,6 +22,7 @@ const footerSections = [ label: "Databases", }, { href: "/deploy-ai", label: "Deploy AI" }, + { href: "/self-hosted-paas", label: "Self-Hosted PaaS" }, { href: "/enterprise", label: "Enterprise" }, { href: "/contact", label: "Contact" }, ],