diff --git a/apps/website/app/features/application-management-software/page.tsx b/apps/website/app/features/application-management-software/page.tsx new file mode 100644 index 0000000..b77ae87 --- /dev/null +++ b/apps/website/app/features/application-management-software/page.tsx @@ -0,0 +1,451 @@ +import { Container } from "@/components/Container"; +import { CallToAction } from "@/components/CallToAction"; +import AnimatedGridPattern from "@/components/ui/animated-grid-pattern"; +import { + Accordion, + AccordionContent, + AccordionItem, + AccordionTrigger, +} from "@/components/ui/accordion"; +import { Button } from "@/components/ui/button"; +import { + Activity, + FileText, + RotateCcw, + Clock, + Eye, + Settings2, + Server, + Cloud, + Cpu, + Network, + Terminal, + HardDrive, + Lock, + CheckCircle2, +} from "lucide-react"; +import Image from "next/image"; +import Link from "next/link"; +import type { Metadata } from "next"; + +export const metadata: Metadata = { + title: "Application Management Software and Solutions", + description: + "Monitor, control, and maintain your business applications from a single dashboard with Dokploy's application management software.", +}; + +const coreFeatures = [ + { + icon: Activity, + title: "Real-time monitoring", + description: + "Track CPU, memory, disk, and network usage for every application in your portfolio. Catch performance issues before they affect users and make informed decisions based on live data, not guesswork.", + }, + { + icon: FileText, + title: "Centralized logs", + description: + "Access real-time logs from any running application directly in the dashboard. When something breaks, you know exactly where to look.", + }, + { + icon: RotateCcw, + title: "Rollback in seconds", + description: + "Recover fast when a release goes wrong. Dokploy supports Docker Swarm automatic rollback when health checks fail, as well as registry-based rollback to any previous deployment version when a Docker registry is configured.", + }, + { + icon: Clock, + title: "Full deployment history", + description: + "View the last ten deployments for any application. Connect incidents to specific releases and resolve them faster, without sifting through unrelated logs.", + }, + { + icon: Eye, + title: "Preview deployments", + description: + "Test application changes in isolated environments before they reach production. When configured, pull requests to your target branch trigger isolated preview builds automatically, so your team can validate functionality before merging.", + }, + { + icon: Settings2, + title: "Environment variable management", + description: + "Manage shared and service-level environment variables across every application. Reduce configuration drift and keep sensitive data out of your codebase.", + }, +]; + +const standardizationChecks = [ + "Consistent deployment workflows across all applications", + "Shared and service-level environment variable management", + "Rollback capabilities built into every release", + "Deployment history tied to specific releases", +]; + +const applicationStatuses = [ + { name: "App-api", status: "Running" }, + { name: "App-frontend", status: "Running" }, + { name: "App-worker", status: "Deploying" }, + { name: "App-scheduler", status: "Running" }, + { name: "App-admin", status: "Rolled back" }, +]; + +const controlFeatures = [ + { + icon: Cpu, + title: "Resource controls", + description: + "Set CPU and memory limits per application to optimize performance and keep resource usage predictable as your application landscape grows.", + }, + { + icon: Network, + title: "Cluster and scaling settings", + description: + "Configure replica counts and Docker Swarm settings to scale business applications across nodes without reworking your infrastructure.", + }, + { + icon: Terminal, + title: "Custom run commands", + description: + "Execute shell commands directly inside any container for advanced management, debugging, or operational tasks that fall outside standard workflows.", + }, + { + icon: HardDrive, + title: "Volume and storage management", + description: + "Set up persistent storage volumes so application data survives restarts and redeployments. Support for bind mounts, volume mounts, and file mounts is built in.", + }, + { + icon: Lock, + title: "Access and security controls", + description: + "Add basic authentication to any application and configure port exposure with precision. Keep internal systems locked down while making the right surfaces accessible.", + }, + { + icon: Clock, + title: "Scheduled jobs", + description: + "Run cron jobs to automate recurring tasks across your application portfolio, from data workflows to maintenance scripts, without adding external tooling.", + }, +]; + +const selfHostedItems = [ + "Full data sovereignty over sensitive data", + "No third-party dependencies", + "Fits hybrid environments and on-premise infrastructure", + "Supports digital transformation at your pace", +]; + +const cloudItems = [ + "Managed infrastructure, zero maintenance overhead", + "Rapid setup for new business units and teams", + "Scale application usage without provisioning servers", + "Ideal for cloud migration and modernization initiatives", +]; + +const faqs = [ + { + question: "What is application performance management software?", + answer: + "Application performance management software helps IT teams monitor application health, track resource usage, and identify performance issues before they affect users. Key features typically include real-time monitoring of CPU, memory, disk, and network usage, alongside log access and alerting. Dokploy covers the operational side of application performance management: giving teams live usage data, deployment history, and rollback capabilities from a single dashboard, without requiring specialist expertise or separate tooling.", + }, + { + question: "What is the best application management software?", + answer: + "The best application management software depends on your business needs, team size, and technical expertise. Enterprise platforms often come with deep integration capabilities and reporting features, but they can require significant investment and a steeper learning curve. Dokploy is built for teams that want operational efficiency without that overhead. It covers the key processes of application management, including monitoring, rollbacks, environment configuration, and scheduled jobs, in a platform you can self-host or run in the cloud so that your IT team can run on your own infrastructure if they want. It\u2019s a strong fit for organizations that want to manage business applications with full control and without vendor lock-in.", + }, + { + question: "What is application lifecycle management software?", + answer: + "Application lifecycle management (ALM) software supports the full lifecycle of a software application, from requirements and development through deployment, ongoing maintenance, and eventual retirement. It connects strategic planning and business objectives with day-to-day operational execution. Dokploy focuses on the operational slice of that lifecycle\u2014standardizing how applications are deployed, monitored, rolled back, and maintained\u2014which is where most teams experience the most friction. For organizations going through digital transformation or modernization initiatives, having that operational foundation in place is what makes broader lifecycle management sustainable.", + }, +]; + +export default function ApplicationManagementSoftwarePage() { + return ( +
+ {/* Hero Section */} +
+ + +
+

+ Application Management Software That Works +

+

+ Monitor, control, and maintain your business applications from a + single dashboard. Dokploy gives your IT team the visibility and + tools to keep every application running at peak + performance—without the complexity. +

+
+ + +
+
+
+
+ + {/* Visibility across every application */} +
+ +
+

+ Visibility across every application as you scale +

+

+ Bring your entire application landscape into one place with + Dokploy. Get a clear view of application health, resource usage, + and deployment history. +

+
+
+
+ + {/* Everything your team needs in one platform */} +
+ +
+

+ Everything your team needs in one platform +

+

+ Improving visibility into your application portfolio is the first + step toward better application management. Dokploy surfaces the + signals your IT team needs, in real time, in one place. +

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

+ {feature.title} +

+

+ {feature.description} +

+
+ ))} +
+
+
+ + {/* Standardize your management process */} +
+ +
+
+

+ Standardize your management process +

+

+ Maintain consistent environments and standardized release + processes to keep operational efficiency at peak levels. When + every application is managed together, your IT team maintains + shared standards instead of tribal knowledge. +

+

+ Dokploy gives teams a consistent application management system + for deployments, environment configuration, and rollback + workflows, so reliability doesn't depend on who happens to + be on call. +

+
    + {standardizationChecks.map((item) => ( +
  • + + + {item} + +
  • + ))} +
+
+
+
+
+ {applicationStatuses.map((app) => ( +
+ {app.name} + + {app.status} + +
+ ))} +
+
+
+
+
+
+ + {/* Full control over your application portfolio */} +
+ +
+

+ Full control over your application portfolio +

+

+ Manage business applications at the level your business goals + require, from resource allocation and scaling to security controls + and workflow automation. +

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

+ {feature.title} +

+

+ {feature.description} +

+
+ ))} +
+
+
+ + {/* Run Dokploy where your business needs it */} +
+ +
+

+ Run Dokploy where your business needs it +

+

+ Deploy Dokploy on your own infrastructure or ours. Both options + give you the same application management capabilities, and you + choose what fits your operational model and regulatory compliance + requirements. +

+
+
+
+
+ +
+

Self-hosted

+
    + {selfHostedItems.map((item) => ( +
  • + + {item} +
  • + ))} +
+
+
+
+ +
+

Dokploy Cloud

+
    + {cloudItems.map((item) => ( +
  • + + {item} +
  • + ))} +
+
+
+
+
+ + {/* Take control of your application landscape */} +
+ +
+

+ Take control of your application landscape +

+

+ Dokploy gives your IT team the application management software it + needs to monitor, maintain, and scale business applications with + confidence. Create your account and get started in minutes. +

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

+ Application management software FAQs +

+
+ + {faqs.map((faq, index) => ( + + + {faq.question} + + {faq.answer} + + ))} + +
+
+ + +
+ ); +} diff --git a/apps/website/app/features/audit-logs/page.tsx b/apps/website/app/features/audit-logs/page.tsx new file mode 100644 index 0000000..35b84c4 --- /dev/null +++ b/apps/website/app/features/audit-logs/page.tsx @@ -0,0 +1,202 @@ +import { Container } from "@/components/Container"; +import AnimatedGridPattern from "@/components/ui/animated-grid-pattern"; +import { Button } from "@/components/ui/button"; +import { + ScrollText, + Building2, + Search, + FileCheck, + AlertCircle, + Shield, + KeyRound, + Paintbrush, +} from "lucide-react"; +import Link from "next/link"; +import type { Metadata } from "next"; + +export const metadata: Metadata = { + title: "Audit Logs for Enterprise Compliance", + description: + "Track every action across your Dokploy organization. Audit logs give enterprise teams the visibility they need for security and compliance.", +}; + +const coreFeatures = [ + { + icon: Building2, + title: "Track actions across your whole organization", + description: + "Audit logs capture authentication events, user management changes, deployment activity, infrastructure updates, environment variable changes, backup configuration, and more. If it happened in Dokploy, it\u2019s recorded.", + }, + { + icon: AlertCircle, + title: "Investigate issues quickly", + description: + "Each log entry includes a timestamp, the user who performed the action, the action type, the resource affected, and the user\u2019s role in Dokploy at the time. When something goes wrong, you have everything you need to trace it back to its source.", + }, + { + icon: Search, + title: "Filter down to exactly what you need", + description: + "Search and filter audit logs by user, resource name, action type, or resource type so you can find the specific event you\u2019re looking for without scrolling through unrelated activity.", + }, + { + icon: FileCheck, + title: "Meet compliance requirements with confidence", + description: + "Audit logs give you documented evidence of access control and change management, making it straightforward to satisfy requirements for SOC 2, GDPR, and internal security policies.", + }, +]; + +const relatedFeatures = [ + { + icon: Shield, + title: "RBAC", + description: + "Control who can perform the actions your audit logs record, with fine-grained permissions across projects and services.", + href: "/features/role-based-access-control", + }, + { + icon: KeyRound, + title: "SSO", + description: + "Centralize authentication with your existing identity provider for secure, seamless access across your organization.", + href: "/features/single-sign-on", + }, + { + icon: Paintbrush, + title: "White labeling", + description: + "Present Dokploy as your own product, with custom branding for your clients or organization.", + href: "/features/white-labeling", + }, +]; + +export default function AuditLogsPage() { + return ( +
+ {/* Hero Section */} +
+ + +
+

+ Full visibility into every action taken +

+

+ Know exactly who did what, and when, across your entire Dokploy + organization. +

+
+ + +
+
+
+
+ + {/* A complete record of every change */} +
+ +
+

+ A complete record of every change +

+

+ Every create, update, delete, deployment, and configuration change + is logged—giving you a reliable trail for security, + compliance, and debugging. +

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

{feature.title}

+

+ {feature.description} +

+
+ ))} +
+
+
+ + {/* Powerful features for growing teams */} +
+ +
+

+ Powerful features for growing teams +

+

+ Dokploy scales with your team, with features and plans for when + you're ready to take the next step. +

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

+ {feature.title} +

+

+ {feature.description} +

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

+ Ready to take control? +

+

+ Talk to us about audit logs and the rest of Dokploy's + higher-tier features. +

+
+ +
+
+
+
+
+ ); +} diff --git a/apps/website/app/features/role-based-access-control/page.tsx b/apps/website/app/features/role-based-access-control/page.tsx new file mode 100644 index 0000000..4110d90 --- /dev/null +++ b/apps/website/app/features/role-based-access-control/page.tsx @@ -0,0 +1,202 @@ +import { Container } from "@/components/Container"; +import AnimatedGridPattern from "@/components/ui/animated-grid-pattern"; +import { Button } from "@/components/ui/button"; +import { + Shield, + Users, + FolderLock, + SlidersHorizontal, + UserPlus, + KeyRound, + ScrollText, + Paintbrush, +} from "lucide-react"; +import Link from "next/link"; +import type { Metadata } from "next"; + +export const metadata: Metadata = { + title: "Role-Based Access Control for Teams", + description: + "Control who can access what across your Dokploy projects. Fine-grained RBAC keeps your infrastructure secure as your team scales.", +}; + +const coreFeatures = [ + { + icon: Users, + title: "Set organization-wide roles", + description: + "Assign owners, admins, and members across your organization, with each role scoping what that user can access and action within Dokploy.", + }, + { + icon: FolderLock, + title: "Grant project-level access", + description: + "Go beyond top-level roles and give individual users access to specific projects, services, or environments\u2014keeping sensitive deployments off-limits to those who don\u2019t need them.", + }, + { + icon: SlidersHorizontal, + title: "Manage permissions for every workflow", + description: + "Enable or restrict actions at a granular level: creating projects, deploying services, accessing Docker, managing SSH keys, running the CLI, and more. Build a permission set that reflects how your team actually works.", + }, + { + icon: UserPlus, + title: "Scale access as your team grows", + description: + "As you add engineers, contractors, stakeholders, and third parties, RBAC makes it straightforward to onboard them with the right level of access from day one\u2014and to update or revoke permissions as roles change.", + }, +]; + +const relatedFeatures = [ + { + icon: KeyRound, + title: "SSO", + description: + "Centralize authentication with your existing identity provider for secure, seamless access across your organization.", + href: "/features/single-sign-on", + }, + { + icon: ScrollText, + title: "Audit logs", + description: + "Keep a full record of every action taken across your Dokploy environment for compliance and accountability.", + href: "/features/audit-logs", + }, + { + icon: Paintbrush, + title: "White labeling", + description: + "Present Dokploy as your own product, with custom branding for your clients or organization.", + href: "/features/white-labeling", + }, +]; + +export default function RoleBasedAccessControlPage() { + return ( +
+ {/* Hero Section */} +
+ + +
+

+ Secure access at every level +

+

+ Give every team member the right permissions in your application + deployment solution with fine-grained role-based access + control—no more, no less. +

+
+ + +
+
+
+
+ + {/* Control without compromise */} +
+ +
+

+ Control without compromise +

+

+ RBAC in Dokploy lets you define exactly what each person on your + team can see, create, control, and manage. +

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

{feature.title}

+

+ {feature.description} +

+
+ ))} +
+
+
+ + {/* Powerful features for growing teams */} +
+ +
+

+ Powerful features for growing teams +

+

+ Dokploy scales with your team, with features and plans for when + you're ready to take the next step. +

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

+ {feature.title} +

+

+ {feature.description} +

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

+ Ready to take your business to the next level? +

+

+ Talk to us about fine-grained RBAC and the rest of + Dokploy's higher-tier feature set. +

+
+ +
+
+
+
+
+ ); +} diff --git a/apps/website/app/features/single-sign-on/page.tsx b/apps/website/app/features/single-sign-on/page.tsx new file mode 100644 index 0000000..f1d7401 --- /dev/null +++ b/apps/website/app/features/single-sign-on/page.tsx @@ -0,0 +1,203 @@ +import { Container } from "@/components/Container"; +import AnimatedGridPattern from "@/components/ui/animated-grid-pattern"; +import { Button } from "@/components/ui/button"; +import { + KeyRound, + Link2, + Users, + ShieldCheck, + UserMinus, + Shield, + ScrollText, + Paintbrush, +} from "lucide-react"; +import Link from "next/link"; +import type { Metadata } from "next"; + +export const metadata: Metadata = { + title: "Single Sign-On for Businesses and Enterprise Teams", + description: + "Connect Dokploy to your existing identity provider with SSO. Centralize access control and keep your organization secure at scale.", +}; + +const coreFeatures = [ + { + icon: Link2, + title: "Connect your existing identity provider", + description: + "Dokploy supports SSO via OpenID Connect (OIDC) and SAML, with native integrations for Okta, Azure AD (Microsoft Entra ID), Auth0, and Keycloak. If you use a different provider, you can configure it manually using standard OIDC or SAML endpoints.", + }, + { + icon: Users, + title: "Remove friction for your team", + description: + "With SSO enabled, your team signs in to Dokploy using the same credentials they use across the rest of your organization\u2014no extra passwords, no separate accounts to keep in sync.", + }, + { + icon: ShieldCheck, + title: "Enforce centralized access policies", + description: + "Authentication flows through your identity provider, so you can apply your existing security policies\u2014MFA requirements, conditional access rules, session timeouts\u2014without configuring them separately in Dokploy.", + }, + { + icon: UserMinus, + title: "Deprovision access instantly", + description: + "When a team member leaves or changes a role, revoking their access in your identity provider immediately removes their access to Dokploy\u2014no manual cleanup across multiple tools.", + }, +]; + +const relatedFeatures = [ + { + icon: Shield, + title: "RBAC", + description: + "Define exactly what each user can do once they\u2019re in Dokploy, with granular role and permission controls across projects, services, and features.", + href: "/features/role-based-access-control", + }, + { + icon: ScrollText, + title: "Audit logs", + description: + "Keep a full record of every login, logout, and action taken across your Dokploy environment for compliance and accountability.", + href: "/features/audit-logs", + }, + { + icon: Paintbrush, + title: "White labeling", + description: + "Present Dokploy as your own product, with custom branding for your clients or organization.", + href: "/features/white-labeling", + }, +]; + +export default function SingleSignOnPage() { + return ( +
+ {/* Hero Section */} +
+ + +
+

+ One login for your entire organization +

+

+ Connect Dokploy to your identity provider and manage access from a + single place. Available to Enterprise plan users and as a one-off + additional feature. +

+
+ + +
+
+
+
+ + {/* Authentication that scales with you */} +
+ +
+

+ Authentication that scales with you +

+

+ Dokploy's SSO support means your team logs in through the + identity provider you already trust, so there are no separate + credentials to manage. +

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

{feature.title}

+

+ {feature.description} +

+
+ ))} +
+
+
+ + {/* Powerful features for growing teams */} +
+ +
+

+ Powerful features for growing teams +

+

+ Dokploy scales with your team, with features and plans for when + you're ready to take the next step. +

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

+ {feature.title} +

+

+ {feature.description} +

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

+ Ready to simplify access for your team? +

+

+ Talk to us about SSO and the rest of Dokploy's security + features. +

+
+ +
+
+
+
+
+ ); +} diff --git a/apps/website/app/features/white-labeling/page.tsx b/apps/website/app/features/white-labeling/page.tsx new file mode 100644 index 0000000..3ee4c84 --- /dev/null +++ b/apps/website/app/features/white-labeling/page.tsx @@ -0,0 +1,201 @@ +import { Container } from "@/components/Container"; +import AnimatedGridPattern from "@/components/ui/animated-grid-pattern"; +import { Button } from "@/components/ui/button"; +import { + Paintbrush, + Type, + Palette, + Link2, + MonitorCheck, + Shield, + KeyRound, + ScrollText, +} from "lucide-react"; +import Link from "next/link"; +import type { Metadata } from "next"; + +export const metadata: Metadata = { + title: "White Label Deployment Platform", + description: + "Rebrand Dokploy as your own product. Customize the name, logo, colors and more to deliver a seamless experience under your own brand.", +}; + +const coreFeatures = [ + { + icon: Type, + title: "Customize your name and logo", + description: + "Replace Dokploy across the entire interface with your own application name. Upload your logo for the sidebar, header, and login page, and set a custom favicon so your branding carries through to the browser tab.", + }, + { + icon: Palette, + title: "Style the interface to match your brand", + description: + "The custom CSS editor gives you direct control over the look and feel of the platform. Load the default theme variables as a starting point, then adjust colors, backgrounds, and button styles to match your brand guidelines.", + }, + { + icon: Link2, + title: "Control the metadata and support links", + description: + "Set your own page title, footer text, sidebar links, and more for documentation and support, so users are always directed to your resources, not Dokploy\u2019s.", + }, + { + icon: MonitorCheck, + title: "Preview changes before you ship them", + description: + "The live preview panel shows how your branding will look across key parts of the interface before you save anything, reducing the risk of pushing changes that break your user experience.", + }, +]; + +const relatedFeatures = [ + { + icon: Shield, + title: "RBAC", + description: + "Define exactly what each user can do once they\u2019re in Dokploy, with fine-grained permissions across projects, features, and services.", + href: "/features/role-based-access-control", + }, + { + icon: KeyRound, + title: "SSO", + description: + "Centralize authentication with your existing identity provider for secure, seamless access across your organization.", + href: "/features/single-sign-on", + }, + { + icon: ScrollText, + title: "Audit logs", + description: + "Keep a full record of every action taken across your environment for compliance and accountability.", + href: "/features/audit-logs", + }, +]; + +export default function WhiteLabelingPage() { + return ( +
+ {/* Hero Section */} +
+ + +
+

+ Deploy applications under your own brand +

+

+ Replace every Dokploy mention with your own name, logo, branding, + and visual identity. +

+
+ + +
+
+
+
+ + {/* Your product, your brand */} +
+ +
+

+ Your product, your brand +

+

+ Dokploy's white labeling lets enterprise teams and agencies + deliver a fully branded, professional deployment platform. +

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

{feature.title}

+

+ {feature.description} +

+
+ ))} +
+
+
+ + {/* Powerful features for growing teams */} +
+ +
+

+ Powerful features for growing teams +

+

+ Dokploy scales with your team, with features and plans for when + you're ready to take the next step. +

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

+ {feature.title} +

+

+ {feature.description} +

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

+ Ready to launch your own platform? +

+

+ Talk to us about white labeling and the rest of Dokploy's + higher-tier features. +

+
+ +
+
+
+
+
+ ); +} diff --git a/apps/website/components/Footer.tsx b/apps/website/components/Footer.tsx index 4185a75..caf0de6 100644 --- a/apps/website/components/Footer.tsx +++ b/apps/website/components/Footer.tsx @@ -22,7 +22,29 @@ const footerSections = [ label: "Databases", }, { href: "/enterprise", label: "Enterprise" }, - { href: "/contact", label: "Contact" }, + { href: "/contact", label: "Contact" }, + ], + }, + { + title: "Enterprise Features", + ariaLabel: "Enterprise features", + links: [ + { + href: "/features/role-based-access-control", + label: "RBAC", + }, + { + href: "/features/single-sign-on", + label: "SSO", + }, + { + href: "/features/audit-logs", + label: "Audit Logs", + }, + { + href: "/features/white-labeling", + label: "White Labeling", + }, ], }, { diff --git a/apps/website/components/Header.tsx b/apps/website/components/Header.tsx index 980fd96..54561b4 100644 --- a/apps/website/components/Header.tsx +++ b/apps/website/components/Header.tsx @@ -118,6 +118,7 @@ function MobileNavigation() {

Application Deployment Databases + Application Management
Pricing
@@ -228,6 +229,9 @@ export function Header() { Manage your databases effortlessly + + Monitor and control your applications +