Air框架部署指南从本地开发到生产环境的完整流程【免费下载链接】airThe first web framework designed for AI to write. Built on Python, FastAPI, Pydantic, and HTMX. By the authors of Two Scoops of Django.项目地址: https://gitcode.com/gh_mirrors/air23/airAir框架作为专为AI设计的Python Web框架基于FastAPI、Pydantic和HTMX构建提供了从本地开发到生产部署的无缝体验。本指南将详细介绍如何将Air应用从开发环境平稳过渡到生产环境涵盖容器化、Kubernetes部署和Railway平台托管等多种方案。本地开发环境准备在开始部署之前首先需要确保本地开发环境已正确配置。Air框架使用uv作为包管理器通过以下步骤可以快速搭建开发环境克隆Air项目仓库git clone https://gitcode.com/gh_mirrors/air23/air cd air使用uv安装依赖uv install运行开发服务器air runAir框架内置了uvicorn开发服务器air run命令会自动启动应用并监听本地端口支持热重载功能非常适合开发阶段使用。容器化部署方案容器化是现代应用部署的最佳实践之一Air提供了完整的容器化支持使应用可以在任何支持Docker的环境中运行。Dockerfile配置Air项目的examples目录中提供了完整的Dockerfile示例位于examples/containerize/Dockerfile。这个Dockerfile采用多阶段构建确保最终镜像体积最小化# 构建阶段 FROM python:3.12-slim AS builder WORKDIR /app COPY pyproject.toml uv.lock ./ RUN uv sync --no-install # 运行阶段 FROM python:3.12-slim WORKDIR /app COPY --frombuilder /app/.venv ./.venv COPY . . CMD [uvicorn, main:app, --host, 0.0.0.0, --port, 8000, --workers, 4, --proxy-headers, --forwarded-allow-ips, *]默认配置使用uvicorn作为生产服务器启动4个工作进程以充分利用服务器资源。如果需要修改应用入口文件或端口可以调整CMD命令中的参数。构建和运行Docker镜像构建Docker镜像docker buildx build -t air-app .运行Docker容器docker run -p 8000:8000 air-app对于多平台构建需求可以参考Docker官方文档添加多平台支持确保镜像可以在不同架构的服务器上运行。Kubernetes部署方案对于需要大规模部署和自动扩展的生产环境Kubernetes是理想的选择。Air提供了完整的Kubernetes部署配置示例。部署配置文件Kubernetes部署配置文件位于examples/deployment/k8s/deployment.yaml包含Deployment、Service、Ingress等完整配置。关键配置项包括容器镜像需要替换为您自己的镜像仓库地址环境变量设置ENVIRONMENTproduction以启用生产模式资源限制根据应用需求调整CPU和内存资源健康检查配置存活探针和就绪探针部署步骤构建并推送Docker镜像到容器仓库docker buildx build -t your-registry/air-app:latest . docker push your-registry/air-app:latest修改deployment.yaml中的镜像地址image: your-registry/air-app:latest应用部署配置kubectl apply -f deployment.yaml -n your-namespaceKubernetes部署支持自动扩展、滚动更新等高级特性非常适合生产环境使用。可以根据实际需求调整副本数量、资源限制等参数。Railway平台部署Railway是一个零配置的云平台特别适合快速部署Air应用。通过以下步骤可以将应用部署到Railway添加Hypercorn依赖Railway推荐使用Hypercorn作为生产服务器需要先添加依赖uv add hypercorn创建Railway配置文件在项目根目录创建railway.json文件{ $schema: https://railway.app/railway.schema.json, build: { builder: NIXPACKS }, deploy: { startCommand: uv run hypercorn main:app --bind \[::]:$PORT\, healthcheckPath: /, healthcheckTimeout: 60 } }部署命令通过Railway CLI完成部署railway login railway init railway deployRailway会自动检测项目类型安装依赖并启动应用。使用Railway referral link注册可以获得$20免费 credits帮助您开始使用。生产环境配置最佳实践无论选择哪种部署方式以下生产环境配置建议都能帮助您确保应用稳定运行环境变量设置AIRFORM_SECRET用于多工作进程环境下的CSRF保护确保所有工作进程使用相同的签名密钥设置ENVIRONMENTproduction启用生产模式优化性能并禁用开发特性安全配置启用HTTPS所有生产环境都应使用HTTPS加密传输配置CORS根据实际需求限制跨域请求设置适当的安全头如Content-Security-Policy、X-Content-Type-Options等性能优化使用适当数量的工作进程通常设置为CPU核心数的2倍启用GZip压缩减少网络传输量配置缓存合理设置静态资源缓存策略部署故障排除如果在部署过程中遇到问题可以参考以下资源官方文档docs/deployment/index.md常见问题docs/about/help_air.md社区支持docs/community/index.mdAir框架的部署灵活性使其能够适应各种生产环境需求无论是简单的单服务器部署还是复杂的云原生架构。通过本指南提供的步骤您可以轻松将Air应用从开发环境迁移到生产环境并利用各种部署方案的优势。【免费下载链接】airThe first web framework designed for AI to write. Built on Python, FastAPI, Pydantic, and HTMX. By the authors of Two Scoops of Django.项目地址: https://gitcode.com/gh_mirrors/air23/air创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考