SuperAPI AI 工具集

managing-astro-local-env

部署与运维

查看项目

更新于 10-16 03:42

技能介绍

该技能用于借助 Astro CLI 管理本地 Airflow 环境,支持 Docker(默认,使用容器)与 Standalone(无 Docker,使用由 uv 管理的本地 venv,要求 Airflow 3 且 uv 在 PATH 中,不支持 Windows)两种模式。新建项目请参考 setting-up-astro-project;Airflow 运行后可配合 authoring-dags、testing-dags 技能使用。

用途与主要能力:启动、停止、重启本地 Airflow(Webserver 位于 http://localhost:8080,默认凭据 admin/admin),查看状态与日志,执行 Airflow CLI 命令,以及通过 astro api airflow 查询运行中的本地实例。修改 requirements.txt、packages.txt 或 Dockerfile 后需重启。

常用方式:Docker 模式用 astro dev start / stop / kill / restart 管理,astro dev restart --scheduler 或 --webserver 可重启指定组件;Standalone 模式可先 astro config set dev.mode standalone,或每次加 --standalone(后续命令也需带上),启动参数有 --foreground/-f、--port/-p、--no-proxy。日志用 astro dev logs(可选 -f,指定 --scheduler/--webserver);执行命令用 astro dev bash 或 astro dev run airflow info。

API 查询:astro api airflow 建议使用操作 ID,默认 localhost:8080、admin/admin,可用 --api-url、--username、--password 覆盖。用 astro api airflow ls 及 describe 发现端点;-p 传路径参数,-F 传体/查询字段,-q/--jq 过滤响应,--paginate 拉取所有页,--generate 输出 curl 命令。可列举 DAG、查看源码与导入错误、暂停/恢复、触发 DAG 运行、查看与清除任务实例、查看日志,以及读取连接、变量和配置。

反向代理可在两种模式下避免多项目端口冲突,项目主机名形如 <project-name>.localhost:6563,用 astro dev proxy status/stop 管理,代理端口默认 6563,可经 astro config set proxy.port 修改或用 --no-proxy 关闭。

限制与排查:Standalone 状态位于 .venv/ 与 .astro/standalone/,其日志为统一日志,不支持按组件过滤。端口占用可停止其他容器或修改 .astro/config.yaml;容器无法启动可先 astro dev kill 再 start;升级 Airflow 前可用 astro dev upgrade-test 测试兼容性,版本在 Dockerfile 中修改。未提供内容:具体版本号、收费与价格信息暂未提供。