Infrastructure Support for Daytona Project
Daytona is a platform that supports various infrastructures, including local, remote, cloud, and different architectures. This document outlines the different platforms Daytona can run on, along with examples for each option.
Local Infrastructure
Daytona can be run locally on a developer’s machine. This is useful for development and testing purposes. The following dependencies are required to run Daytona locally:
- Go programming language
- Git
- Docker
- Shell scripting
- IDEs
An example of running Daytona locally can be found in the Daytona GitHub repository, which provides a step-by-step guide on how to set up and run Daytona on a local machine.
Remote Infrastructure
Daytona can be run on remote machines, allowing for geographically dispersed teams to collaborate and work on the project. The following example demonstrates how Autosport Labs, a company that develops open source motorsports technology, uses online tools to stay in touch and work remotely:
“We use online tools heavily to stay in touch and work and socially. I’d say we’re just as productive as a traditional office environment.”
Autosport Labs injects open source into motorsports | Opensource.com
Cloud Infrastructure
Daytona can be run on cloud infrastructure, providing scalability, flexibility, and reliability. The following cloud providers are supported:
- AWS
- GCP
- Azure
An example of running Daytona on AWS can be found in the NASCAR telemetry data distribution case study, which demonstrates how NASCAR uses NATS to distribute live telemetry data to the AWS cloud for historical analysis and real-time distribution to racing teams and fans.
Different Architectures
Daytona supports different architectures, including:
- Monolithic
- Microservices
- Serverless
An example of running Daytona on a microservices architecture can be found in the Daytona GitHub repository, which provides a step-by-step guide on how to set up and run Daytona using Docker Compose.
Key Technologies and Dependencies
The following technologies and dependencies are required to run Daytona:
- Go programming language
- Docker
- Git
- gRPC
- Kubernetes
- IDEs
- Shell scripting
- GitHub Actions or similar CI/CD tools
- Container registry
- OAuth2
Online Documentation
The following online documentation provides additional information on the technologies and dependencies required to run Daytona:
- How Adform transformed 1,300 different data sources into one central observability system with Grafana | Grafana Labs
- How To Use Functions in SQL | DigitalOcean
- How To Use Primary Keys in SQL | DigitalOcean
- How to Verify Downloaded Files | DigitalOcean
- Optimizing Server Requests with React Hooks | DigitalOcean
- How To Use Stored Procedures in MySQL | DigitalOcean
- A Quick Introduction to the Yarn Package Manager | DigitalOcean
- How to Distribute Go Modules | DigitalOcean
- How To Use Unions in SQL | DigitalOcean
- How To Use cd, pwd, and ls to Explore the File System on a Linux Server | DigitalOcean
- Enforcing encryption at scale - Engineering at Meta