Target Configurations
A Target Configuration refers to the specific destination or environment where your development setup, facilitated by various Providers, is deployed and managed. Providers define the method and technology used to create your environments, while Targets Configurations specify the precise location or platform where these environments will reside.
A Target Configuration can be a local machine, a remote server, or a cloud instance, and it can vary based on the chosen Provider. Target Configurations offer the flexibility to deploy and manage environments across different platforms and accounts, all within the unified interface provided by Daytona.
Once you add your Target Configuration, it becomes available for selection whenever you create a new development environment in Daytona. You can create multiple Target Configurations, list existing ones, or delete those you no longer need.
Create a Target Configuration
Daytona provides an option to create a Target Configuration to use when managing Workspaces.
- Run the following command to create a Target Configuration:
daytona target-config create
- Select the appropriate Provider for the environment you want to deploy to.
Choose a provider7 items===Dockerv0.0.0DigitalOceanv0.0.0AWSv0.0.0Azurev.0.0.0GCPv0.0.0Hetznerv0.0.0Flyv0.0.0
- Enter a name for your Target Configuration.
Target Config Name>
- Enter the appropriate configuration options when prompted. The configuration options vary based on the selected Provider. The following example shows adding a remote Docker Target Configuration.
Remote Hostname>
Remote Password>
Remote Port>
Remote UserNote: non-root user required>
Sock Path> /var/run/docker.sock
Workspace Data DirThe directory on the remote host where the workspace data will be stored> /tmp/daytona-data
Remote Private Key Pathdaytona_configknown_hostsCustom pathNone
- Click
Enter
to confirm adding the Target Configuration.
Target Config <target_config> created successfully
List Target Configurations
Daytona provides an option to keep track of your Target Configurations by listing all previously created Target Configurations with their details.
- Run the following command to list currently set Target Configurations:
daytona target-config list
Upon running this command, Daytona will display a list of your Target Configurations with their details. You will be able to see the Target Configuration name, the Provider it is connected to, and its configured Runner.
Target Provider Runner────────────────────────────────────────────────local docker-provider local
Delete a Target Configuration
Daytona provides an option to delete Target Configurations, helping you manage and remove those that are no longer needed. Once a Target Configuration is deleted, you will not be able to manage or deploy Workspaces on that Target Configuration.
- Run the following command to delete a Target Configuration:
daytona target-config delete
Upon running this command, Daytona will display a list of your Target Configurations with their details. You will be able to see the Configuration name, the unique identifier of the Workspace, and the repository it is connected to.
- Press
Enter
on the selected Configuration to delete it.
Choose a Target Config To Delete1 item===MyTargetdocker-provider
- Click
Yes
to confirm deleting the Target Configuration.
Delete all workspaces within MyTarget?You might not be able to easily remove these workspaces later.
[Yes] [No]
Target Config MyTarget removed successfully
Docker (Local)
Daytona provides an option to create a local Docker Target Configuration to use for deploying and managing Workspaces. The local Docker Target Configuration enables you to deploy Workspaces on your local machine using Docker.
- Run the following command to create a Target Configuration:
daytona target-config create
- Select
Docker
to use the local Docker Provider.
Choose a provider1 item===Dockerv0.0.0
- Enter a name for your Target Configuration.
Target Config Name>
- Enter the appropriate configuration options when prompted.
Sock Path> /var/run/docker.sock
- Click
Enter
to confirm setting the Target Configuration.
Target config <target_config_name> created successfully
Docker (Remote)
Daytona provides an option to create a remote Docker Target Configuration to use for deploying and managing Workspaces. The remote Docker Target Configuration enables you to deploy Workspaces on a remote machine using Docker.
- Run the following command to create a Target Configuration:
daytona target-config add
- Select
Docker
to use the Docker Provider.
Choose a Provider1 item===Dockerv0.0.0
- Enter a name for your Target Configuration.
Target Config Name>
- Enter the appropriate configuration options when prompted.
Remote Hostname>
Remote Password>
Remote Port>
Remote UserNote: non-root user required>
Sock Path> /var/run/docker.sock
Target Data DirThe directory on the remote host where the target data will be stored> /tmp/daytona-data
Remote Private Key PathShowing files in: /home/user/.sshYou can select a file, choose None or enter a Custom path> config> config.save> id_rsa> id_rsa.pub> id_rsa_gitlab> id_rsa_gitlab.pub> known_hosts> known_hosts.old> Custom path> None
- Click
Enter
to confirm setting the Target Configuration.
Target Config <target_config> created successfully
DigitalOcean
Daytona provides an option to create a DigitalOcean Target Configuration to use for deploying and managing Workspaces. The DigitalOcean Target Configuration enables you to deploy Workspaces a remote machine using DigitalOcean.
- Run the following command to create a Target Configuration:
daytona target-config create
- Select
DigitalOcean
to use the DigitalOcean Provider.
Choose a provider1 item===DigitalOceanv0.0.0
- Enter a name for your Target Configuration.
Target Config Name>
- Enter the appropriate configuration options when prompted.
Auth TokenIf empty, token will be fetched from the DIGITALOCEAN_ACCESS_TOKEN environment variable.>
Disk Size>
Image>
Region>
Size>
- Click
Enter
to confirm setting the Target Configuration.
Target Config <target_config> created successfully
AWS
Daytona provides an option to create an AWS Target Configuration to use for deploying and managing Workspaces.
- Run the following command to create a Target Configuration:
daytona target-config create
- Select
AWS
to use the AWS Provider.
Choose a provider1 item===AWSv0.0.0
- Enter a name for your Target Configuration.
Target Config Name>
- Enter the appropriate configuration options when prompted.
Access Key IdFind this in the AWS Console under "My Security Credentials"https://aws.amazon.com/premiumsupport/knowledge-center/manage-access-keys/Leave blank if you've set the AWS_ACCESS_KEY_ID environment variable, or enteryour Id here.>
Device NameThe device name for the volume. This is typically the root device name for specified AMI.List of device names:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/device_naming.html> /dev/sda1
Image IdThe ID of the Amazon Machine Image (AMI) to launch an instance. Default is ami-04a81a99f5ec58529.How to find AMI that meets your needs:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/finding-an-ami.html> ami-04a81a99f5ec58529
Instance TypeThe type of instance to launch. Default is t2.micro.List of available instance types:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#AvailableInstanceTypes> t2.micro
RegionThe geographic area where AWS resourced are hosted. List of available regions:https://docs.aws.amazon.com/general/latest/gr/rande.htmlLeave blank if you've set the AWS_DEFAULT_REGION environment variable, or enter your region here.> us-east-1
Secret Access KeyFind this in the AWS Console under "My Security Credentials"https://aws.amazon.com/premiumsupport/knowledge-center/manage-access-keys/Leave blank if you've set the AWS_SECRET_ACCESS_KEY environment variable, or enter your key here.>
Volume SizeThe size of the instance volume, in GB. Default is 20 GB.It is recommended that the disk size should be more than 20 GB.List of volume size limits:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/volume_limits.html> 20
Volume TypeThe type of volume. Default is gp3.List of available volume types:https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html>
- Click
Enter
to confirm creating the Target Configuration.
Target Config <target_config> created successfully
Azure
Daytona provides an option to set an Azure Target Configuration to use for deploying and managing Workspaces.
- Run the following command to set a Target Configuration:
daytona target-config set
- Select
Azure
to use the Azure Provider.
Choose a provider1 item===Azurev0.0.0
- Enter a name for your Target Configuration.
Target Config Name>
- Enter the appropriate configuration options when prompted.
Client IDLeave blank if you've set the AZURE_CLIENT_ID environment variable, or enter your Client Id here.To find the this, look for "appId" in the output after generating client credentials.https://learn.microsoft.com/en-us/cli/azure/azure-cli-sp-tutorial-1?tabs=bash>
Client SecretLeave blank if you've set the AZURE_CLIENT_SECRET environment variable, or enter your ClientSecret here.To find the this, look for "password" in the output after generating client credentialshttps://learn.microsoft.com/en-us/cli/azure/azure-cli-sp-tutorial-1?tabs=bash>
Disk SizeThe size of the instance volume, in GB. Default is 30 GB. It is recommended that the disk size should be more than 30 GB.>
Disk TypeThe type of the azure managed disk. Default is StandardSSD_LRS. List of available disk types:https://docs.microsoft.com/azure/virtual-machines/linux/disks-typesList of available disk types per location can be retrieved using the command:az vm list-skus --location <your-region> --output table>
Image URNThe identifier of the Azure virtual machine image to launch an instance. Default is Canonical:ubuntu-24_04-lts:server:latest.List of available images:https://learn.microsoft.com/en-us/azure/virtual-machines/linux/cli-ps-findimage>
RegionThe geographic area where Azure resources are hosted. Default is centralus.List of available regions can be retrieved using the command:"az account list-locations -o table">
Resource GroupIf not set, Daytona will create a "daytona" resource group. How to create resource group:https://learn.microsoft.com/en-us/azure/azure-resource-manager/management/manage-resource-groups-portal>
Subscription IDLeave blank if you've set the AZURE_SUBSCRIPTION_ID environment variable, or enter your Subscription Id here.How to find subscription id:https://learn.microsoft.com/en-us/azure/azure-portal/get-subscription-tenant-id#find-your-azure-subscription>
Tenant IDLeave blank if you've set the AZURE_TENANT_ID environment variable, or enter your Tenant Id here.To find the this, look for "tenant" in the output after generating client credentials.https://learn.microsoft.com/en-us/cli/azure/azure-cli-sp-tutorial-1?tabs=bash>
VM SizeLeave blank if you've set the AZURE_TENANT_ID environment variable, or enter your Tenant Id here.To find the this, look for "tenant" in the output after generating client credentials.https://learn.microsoft.com/en-us/cli/azure/azure-cli-sp-tutorial-1?tabs=bash>
- Click
Enter
to confirm setting the Target Configuration.
Target Config <target_config> created successfully
GCP
Daytona provides an option to create a Google Cloud Platform (GCP) Target Configuration to use for deploying and managing Workspaces.
- Run the following command to set a Target Configuration:
daytona target-config create
- Select
GCP
to use the GCP Provider.
Choose a provider1 item===GCPv0.0.0
- Enter a name for your Target Configuration.
Target Config Name>
- Enter the appropriate configuration options when prompted.
Disk SizeThe size of the instance volume, in GB. Default is 20 GB.>
Disk TypeThe GCP disk type to use for the VM. Default is pd-standard.https://cloud.google.com/compute/docs/disksList of available disk types can be retrieved using the command:gcloud compute disk-types list>
Machine TypeThe GCP machine type to use for the VM. Default is List n1-standard-1.https://cloud.google.com/compute/docs/general-purpose-machinesList of available machine types can be retrieved using the command:gcloud compute machine-types list>
Project IDThe GCP project ID where the resources will be created.Leave blank if you've set the GCP_PROJECT_ID.How to locate the project ID:https://support.google.com/googleapi/answer/7014113?hl=en>
VM ImageThe GCP image to use for the VM.Default is projects/ubuntu-os-cloud/global/images/family/ubuntu-2204-ltshttps://cloud.google.com/compute/docs/imagesList of available images can be retrieved using the command:gcloud compute images list>
ZoneThe GCP zone where the resources will be created. Default is us-central1-a.https://cloud.google.com/compute/docs/regions-zonesList of available zones can be retrieved using the command:gcloud compute zones list>
Credential FileFull path to the GCP service account JSON key file.Leave blank if you've set the GCP_CREDENTIAL_FILE environment variable.Ensure that the file is secure and accessible only to authorized users.>
- Click
Enter
to confirm setting the Target Configuration.
Target Config <target_config> created successfully
Hetzner
Daytona provides an option to create a Hetzner Target Configuration to use for deploying and managing Workspaces.
- Run the following command to set a Target Configuration:
daytona target-config create
- Select
Hetzner
to use the Hetzner Provider.
Choose a provider1 item===Hetznerv0.0.0
- Enter a name for your Target Configuration.
Name>
- Enter the appropriate configuration options when prompted.
API TokenIf empty, token will be fetched from the HETZNER_API_TOKEN environmentvariable.>
Disk ImageThe Hetzner image to use for the VM. Default is ubuntu-24.04.https://docs.hetzner.com/robot/dedicated-server/operating-systems/standard-images>
Disk SizeThe size of the instance volume, in GB. Default is 20 GB.>
LocationThe locations where the resources will be created. Default is fsn1.https://docs.hetzner.com/cloud/general/locations>
LocationServer TypeThe Hetzner server type to use for the VM. Default is List cpx11.https://docs.hetzner.com/cloud/servers/overview>
- Click
Enter
to confirm setting the Target Configuration.
Target Config <target_config> created successfully
Fly
Daytona provides an option to create a Fly Target Configuration to use for deploying and managing Workspaces.
- Run the following command to set a Target Configuration:
daytona target-config create
- Select
Fly
to use the Fly Provider.
Choose a provider1 item===Flyv0.0.0
- Enter a name for your Target Configuration.
Target Config Name>
- Enter the appropriate configuration options when prompted.
Auth TokenIf empty, token will be fetched from the FLY_ACCESS_TOKEN environment variable.>
Disk SizeThe size of the disk in GB.>
Org SlugThe organization name to create the fly machine in.>
RegionThe region where the fly machine resides. If not specified, near region will be used.>
SizeThe size of the fly machine. Default is shared-cpu-4x.List of available sizes https://fly.io/docs/about/pricing/#started-fly-machines>
- Click
Enter
to confirm setting the Target Configuration.
Target Config <target_config> created successfully