Architecture
Daytona architecture diagram represents the Daytona platform, featuring components and services available in its Open Source and Enterprise distributions. Daytona Open Source is designed to provide core functionality for development, while Daytona Enterprise builds on this foundation with enhanced features tailored for larger organizations, including authentication, authorization, dashboard, observability capabilities, and resource management.
Open Source
Daytona Open Source includes the Daytona API, which serves as the central interface for programmatically interacting with Daytona. The Open Source version provides a comprehensive set of features and tools to manage development environments, including Interfaces, Git Providers, Container Registries, Providers, and Targets.
Interfaces
Daytona Open Source offers a variety of Interfaces to interact with the platform and manage development environments. Interfaces provide different ways to interact with Daytona, enabling developers to choose the most suitable method based on their preferences and workflows.
These include the Command Line Interface (CLI) for direct control, IDEs such as Visual Studio Code (VSCode), Jupyter, Zed, Cursor, JetBrains IDEs for integrated development, and Terminal SSH.
Additionally, Daytona SDK is provided to enable developers to create custom integrations and extend platform functionality.
Git Providers
Daytona Open Source integrates Git Providers to manage version control operations and interact with Git repositories. Git Providers enable efficient source code management and synchronization with Workspaces.
Supported Git Providers include GitHub, GitLab, Bitbucket, GitHub Enterprise Server, GitLab Self-Managed, Bitbucket Server, Codeberg, Gitea, Gitness, Azure DevOps, AWS CodeCommit, Gogs, and Gitee.
The Git Providers integration facilitates collaborative development workflows and streamlines the connection between repositories and development environments.
Container Registries
Container registries store credentials used to pull container images from specified registry servers. Adding container registry credentials is useful for users who want to create Workspaces from private images and those hosted on private registries.
Providers
Daytona Open Source uses Providers to enable integration with various technologies to create and manage development environments. Providers abstract complexities of underlying technologies and serve as the foundational engines that Daytona leverages to deploy and run your environments.
Supported Providers include Docker, DigitalOcean, AWS, Azure, GCP, Hetzner, and Fly.
Targets
Targets represent isolated processing units where Workspaces are executed. They can operate on various infrastructures, including cloud-based and on-premises environments. Targets provide the necessary compute resources and meet security requirements within the defined infrastructure.
Daytona supports a variety of Targets, including Docker (Local), Docker (Remote), DigitalOcean, AWS, Azure, GCP, Hetzner, and Fly.
Enterprise
The Enterprise edition of Daytona extends the capabilities of the Open Source version with additional features and services tailored for enterprise-grade development environments. These enhancements include advanced security, authentication, and authorization mechanisms, as well as observability and resource management tools to optimize workspace performance and utilization.
Dashboard
The Enterprise version introduces a Dashboard, which provides a centralized interface for managing and monitoring the platform, improving visibility and control over development environments.
Authentication
Authentication features support Single Sign-On (SSO) and standards such as Security Assertion Markup Language (SAML) and System for Cross-domain Identity Management (SCIM), ensuring secure access to the platform. This enables seamless integration with enterprise identity systems and simplifies user management.
Authorization
Authorization capabilities allow for granular control of access and permissions across users, teams, organizations, and projects. This ensures secure collaboration and adherence to organizational policies by providing role-based access management.
Observability
Observability tools offer enhanced monitoring, logging, and tracing capabilities for Workspaces and development activities. This ensures that teams can track system performance, debug issues effectively, and maintain operational insights into their environments.
Resource Management
Resource Management is expanded with enterprise features, enhancing workspace classes and quota management to meet large-scale, organization-wide requirements.
Identity Providers
The Enterprise version integrates with Identity Providers (IDP) to enhance authentication and identity management. Supported IDPs include EntraID, Cognito, Okta, OpenID, Google, and others. These integrations ensure that enterprises can use their existing identity systems to manage user authentication, enabling secure and compliant access to the platform.
Security
Daytona Enterprise enhances security by integrating with advanced security tools and services. These include JFrog, Snyk, Sonatype, and more, ensuring that vulnerabilities in dependencies and containerized environments are identified and mitigated. These security integrations provide automated scanning, reporting, and remediation, reinforcing the integrity of development workflows and applications.