Skip to content

Getting Started

This section will guide you through the steps required to install, configure, and use Daytona to manage your development environments.

Before You Begin

Before installing and using Daytona, ensure that your operating system meets the necessary requirements, dependencies and tools.

System requirements

Daytona supports multiple operating systems and architectures. Ensure your system matches one the following specifications:

Operating SystemArchitecture
Linuxx86_64 or ARM64
macOSx86_64 (Intel-based) or ARM64 (Apple Silicon)
Windowsx86_64 or ARM64

Dependencies

Daytona requires specific dependencies to be installed on your system to support the operation and management of development environments. Ensure these dependencies are installed and properly configured on your system:

DependencyDescription
DockerDaytona uses Docker to create and manage isolated development environments.
Administrator PrivilegesEnsure that you have the necessary permissions to install and configure Daytona on your system.

Tools

Daytona requires certain tools to be installed on your system to optimize the setup and management of development environments. Ensure these tools are installed and properly configured on your system:

ToolDescription
Text Editor / IDERecommended for editing configuration files and working with code within Daytona Workspaces.
SSH ClientRequired for accessing remote servers, especially if deploying Workspaces on a remote Docker installation or accessing remote Git repositories.

Installing Daytona

Follow the instructions provided in the installation guide to install Daytona on your operating system. The guide includes detailed steps for installing Daytona on Linux, macOS, and Windows operating systems.

The installation process may vary depending on your operating system and specific environment. Refer to the guide for comprehensive instructions tailored to your setup.

Once you have completed the installation, you will be ready to start using Daytona to manage and develop your development environments. If you encounter any issues during installation, consult by reaching out to Daytona’s Slack community for assistance.

Using the CLI

The Daytona Command-Line Interface (CLI) is the primary method of interacting with the Daytona platform. The CLI provides a comprehensive set of commands that allow you to manage Workspaces, Providers, and other system configurations.

To access the Daytona CLI, open your terminal and use the daytona command followed by the desired subcommand. The CLI offers a wide range of commands, each serving a specific purpose, such as creating Workspaces, managing Providers, setting Targets, and configuring system settings.

For a complete list of available commands and their descriptions, refer to the CLI Reference. This reference guide provides detailed information on each command, including usage examples and command options, helping you leverage the full potential of the Daytona CLI.

Use the daytona --help command to list all commands, offering a convenient way to explore available options.

Adding a Git Provider

Integrate Daytona with a Git Provider to manage version control operations and interact with your Git repositories.

Daytona supports a variety of Git Providers, including GitHub, GitLab, Bitbucket, GitHub Enterprise Server, GitLab Self-Managed, Bitbucket Server, Codeberg, Gitea, Gitness, Azure DevOps, AWS CodeCommit, Gogs and Gitee.

The integration supports and enables interacting with your codebase, cloning repositories, and pushing changes directly from Daytona.

  1. Run the following command to add a Git Provider:
Terminal window
daytona git-providers add
  1. Select the Git Provider you want to add from the list.

  2. Enter your Git Provider credentials for Daytona to authenticate and enable secure access to your repositories.

Upon successful authentication, Daytona will register the Git Provider, allowing you to interact with your repositories directly from Daytona.

Git provider has been registered

You can install additional Git Providers to manage multiple repositories across different platforms and accounts.

Use the daytona git-providers --help command to view available options for managing your Git Provider configurations and interacting with your repositories.

Installing a Provider

Providers are plugins through which Daytona integrates 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, whether through containerization, orchestration, or cloud-based virtual machines.

Daytona supports a variety of Providers, including Docker, DigitalOcean, AWS, Azure, GCP, Hetzner, and Fly

  1. Run the following command to install a Provider:
Terminal window
daytona provider install
  1. Select the Provider you want to install from the list.

Upon selecting the Provider, Daytona will install and configure the chosen Provider, making it available for managing and deploying development environments.

Provider <provider> has been successfully installed

You can install additional Providers to extend Daytona’s capabilities and support a wide range of container management platforms and cloud hosting services.

Setting a Target

A Target refers to the specific destination or environment where your development setups, facilitated by various Providers, are deployed and managed. Providers define the method and technology used to create your environments, while Targets specify the precise location or platform where these environments will reside.

A Target can be a local machine, a remote server, or a cloud instance, and it can vary based on the chosen Provider. Targets offer the flexibility to deploy and manage environments across different platforms and accounts, all within the unified interface provided by Daytona.

Daytona supports a variety of Targets, including Docker (Local), Docker (Remote), DigitalOcean, AWS, Azure, GCP, Hetzner, and Fly.

Once you set your Target, it becomes available for selection whenever you create a new development environment in Daytona. You can manage multiple Targets or delete those you no longer need.

  1. Run the following command to set a Target:
Terminal window
daytona target set
  1. Select the appropriate Provider for the environment you want to deploy to.

  2. Select New Target.

  3. Enter a name for your Target.

  4. Enter the Target appropriate configuration options when prompted.

    The configuration options vary based on the selected Provider.

  5. Click Enter to confirm setting the Target.

Target set successfully

You can set additional Targets for different development environments, allowing you to manage and switch between them as needed.

Use the daytona target --help command to view available configuration options for setting a Target.

Choosing the Default IDE

Connect to your development environment using a variety of IDEs, including popular options like Visual Studio Code (VSCode), JetBrains IDEs, Jupyter, Zed, Cursor, and Terminal SSH.

By setting the default IDE, you can automatically open your development environment in your preferred environment, optimizing your workflow and reducing setup time.


  1. Run the following command to set the default IDE:
Terminal window
daytona ide
  1. Select your preferred IDE from the list presented. Upon selecting, Daytona will set it as the default IDE and display a confirmation message.
Default IDE: <IDE>

Use the daytona code command to automatically open the default IDE already connected to your Workspace.

You can choose additional IDEs and set them as the default for your development environments.

Use the daytona ide --help command to view available configuration options for the IDE.

Creating your Workspace

Create a Workspace using Daytona to manage your development environments. A Workspace represents an isolated development environment where you can manage your code, build projects, and interact with your team.

To create a Workspace, use the daytona create command and follow the prompts to configure your Workspace settings. Once created, you can access your Workspace and interact with your codebase.

  1. Run the following command to start the guided Workspace creation process:
Terminal window
daytona create
  1. Select one of the three provided options:
  • Select from a List of Repositories
  • Enter a Custom Repository URL
  • Create from Sample
  1. Select the Git repository from the list, enter the URL of the Git repository you want to link with your Workspace, or choose to create a Workspace from a sample project.

  2. Enter a name for your Workspace.

  3. Wait while Daytona sets up your Workspace. It handles all the initialization and configuration of your environment.

WORKSPACE | ✓ Request submitted
WORKSPACE | ✓ Creating workspace daytona
daytona | Creating project daytona
daytona | Pulling image...
daytona | Pulling from daytonaio/workspace-project
...
daytona | Project daytona created
daytona | Starting project daytona
daytona | Project daytona started

Use the daytona create --help command to view available configuration options for creating a Workspace.