掌握 Python 中的 Daytona 积分:详细的分步指南 🚀

什么是 Daytona?

Daytona 是一个开源开发环境管理器 (DEM),可简化开发工作流程,使您能够基于 **OCI 容器** 创建可重现的开发环境。在本指南中,我将逐步演示如何集成使用 Reflex Framework 制作的 Python 项目 Askpixie,从而引导您完成将 Daytona 与 Python 项目集成的过程。

在您的机器上安装 Daytona

首先,请访问 Daytona 官方文档进行安装:

Daytona 文档

Daytona 支持多个平台,包括:

  • Linux
  • 视窗
  • macOS
  • 由于我使用的是 **macOS**,因此我将继续进行 macOS 安装。

    **选项 1:通过终端安装(推荐)**

    直接在终端中运行以下命令:

    (curl -sf -L https://download.daytona.io/daytona/install.sh | sudo bash) && daytona server -y && daytona

    这将安装 Daytona 并自动启动服务器。

    **选项 2:手动安装**

    如果您更喜欢手动安装,则可以将 Daytona 安装在您想要的路径中。对我来说,它位于 Documents 文件夹中。

    Image of showing path for daytona installation
  • 下载 Daytona(适用于 Apple Silicon 的 ARM64):
  • # ARM64/Apple Silicon
    curl -sf -L https://download.daytona.io/daytona/v0.49/daytona-darwin-arm64 -o daytona

    注意:对于基于 Intel 的 Mac,上述命令替换为:

    # x86-64/Intel-based
    curl -sf -L https://download.daytona.io/daytona/v0.49/daytona-darwin-amd64 -o daytona
  • 下载后,使文件可执行:
  • chmod +x ./daytona

    安装 Docker Desktop

    Daytona 需要 Docker 来运行 Workspaces。如果您尚未安装 Docker:

  • 下载并安装 Docker Desktop。
  • 启动 Docker Desktop 应用程序以确保它在后台运行。
  • 启动 Daytona 服务器

    安装 Daytona 后

  • 打开终端并导航到安装 Daytona 的目录。对我来说,它在 Documents 中:
  • cd ~/Documents

    要启动 Daytona 服务器,请运行:

    ./daytona serve

    或者,您也可以直接运行:

    ./daytona

    这将打开 Daytona CLI,如下所示:

    Daytona ClI

    在这里,在“daytona server”选项上按 Enter 键以启动 Daytona 服务器守护程序。CLI 将提示您确认:

    Daytona Server Daemon

    一旦您单击**是**,Daytona 服务器守护程序将启动,您应该会看到以下消息:

    Server Started

    设置 Git 提供程序

    要将 Daytona 连接到您的 GitHub 存储库:

  • 打开 Daytona CLI。
  • 选择 daytona git-provider add
  • 它将显示这种类型的窗口:

    由于我的项目托管在 GitHub 上,因此我将选择 GitHub。

    git provider add

    然后它会要求提供个人访问令牌

    Personal Access Token

    您可以从此处获取有关创建 PAT 的更多详细信息

    注意:创建 PAT 时授予以下访问权限:

  • 回购
  • 阅读:用户,用户:电子邮件
  • 管理员:repo_hook
  • 给出 PAT 后,您可以选择提交签名方法:

    Commit Signing Method

    您可以从这里获得有关签名验证的更多详细信息。

    一旦完成所有这些,您的 Git 提供商将被注册。

    设置云提供商

    要管理 AWS、Azure 或 GCP 等云环境,您需要安装必要的云提供商。运行此命令进行设置:

    ./daytona provider install

    选择您的开发环境

    “目标”是指您的环境将运行的平台,例如 Docker(本地或远程)、AWS、GCP 或其他云服务。通过运行以下命令选择您的目标:

    ./daytona

    然后,从 CLI 选项中选择 daytona 目标集:

    daytona target set

    我使用 Docker 在本地运行我的环境,因此我选择 local-docker。

    配置您的 IDE

    Daytona 可以与各种 IDE(例如 VS Code、IntelliJ 等)无缝集成。要设置您喜欢的 IDE,请运行以下命令:

    ./daytona ide

    我正在使用 VSCode(浏览器),但您可以使用您选择的任何 IDE。

    将 devcontainer.json 添加到你的存储库

    创建一个 `.devcontainer/devcontainer.json` 文件来定义开发容器设置。此文件配置您的开发环境并确保自动安装所有必需的依赖项。

    您可以手动创建一个 `devcontainer.json` 文件,或者使用 Devcontainer AI 等工具为您生成一个。以下是我为 Askpixie 使用的 devcontainer.json:

    Devcontainer.json

    创建 Daytona 工作区

    现在 Daytona 已连接到 GitHub 并且您的云提供商已设置,现在是时候创建工作区了。运行以下命令并提供您的 GitHub 存储库的 URL:

    ./daytona create 

    Daytona 将获取您的存储库,创建工作区并提供开发环境。

    您已全部设置完毕!

    Daytona 现在将在选定的 IDE 中打开您的项目,您可以开始开发您的项目而无需任何设置麻烦!

    故障排除:权限被拒绝错误

    在 macOS 上,启动 Daytona 服务器时可能会遇到权限被拒绝错误。要解决此问题,请使用以下命令授予可执行权限:

    chmod +x ./daytona

    避免使用 sudo 更改权限,因为这可能会导致工作区创建出现问题。chmod 命令应该可以解决该问题。

    **结论**

    通过遵循本指南,您已成功将 Daytona 集成到您的项目中并设置了流畅的开发环境。Daytona 简化了可重复开发环境的管理,让您可以专注于最重要的事情 — 编码!