ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

Langflow 部署指南:在 Google Cloud Platform 上通过 Cloud Shell 一键启动 Langflow 开发环境

Langflow 部署指南:在 Google Cloud Platform 上通过 Cloud Shell 一键启动 Langflow 开发环境 Langflow 部署指南在 Google Cloud Platform 上通过 Cloud Shell 一键启动 Langflow 开发环境【免费下载链接】langflowLangflow is a powerful tool for building and deploying AI-powered agents and workflows.项目地址: https://gitcode.com/GitHub_Trending/la/langflow本文基于仓库内 scripts/gcp/GCP_DEPLOYMENT.md 编写讲解如何用 Google Cloud Shell 在一个全新的 GCP 项目中自动创建 Compute Engine VM、配置 VPC/子网/防火墙并通过启动脚本安装 Langflow、以langflow run --host 0.0.0.0 --port 7860对外提供服务。读完本文你将掌握标准 VM 与 Spot可抢占实例两套部署脚本的完整参数、访问方式、成本构成以及资源清理方法并能深入理解脚本背后每一条gcloud命令与启动命令的实际作用。部署方案概览Langflow 在 GCP 上的官方部署路径是打开 Cloud Shell → 信任仓库Trust repo→ 在scripts/gcp工作目录下执行教程脚本。整套部署由仓库中的以下文件构成文件作用scripts/gcp/GCP_DEPLOYMENT.md部署入口文档提供 Standard 与 Spot 两条部署路径及价格估算scripts/gcp/deploy_langflow_gcp.sh标准 VM 部署脚本scripts/gcp/deploy_langflow_gcp_spot.shSpot/可抢占实例部署脚本在标准版基础上追加--preemptiblescripts/gcp/walkthroughtutorial.md标准 VM 的 Cloud Shell 分步教程约 45 分钟scripts/gcp/walkthroughtutorial_spot.mdSpot 实例的 Cloud Shell 分步教程注意Cloud Shell 打开后务必先选择Trust repo否则部分gcloud命令在临时ephemeralCloud Shell 环境中无法运行。该方案在 GCP 上创建的是一台Debian 11 VM通过启动脚本startup-script metadata安装 Python 包管理器、Langflow 本体然后在TCP 7860 端口上以监听0.0.0.0的方式对外提供 Web 界面。前置条件一个具备创建资源权限的 GCP 账号需要开通计费教程的walkthrough-project-setup显式启用了compute.googleapis.com和container.googleapis.com两个 API见 scripts/gcp/walkthroughtutorial.md一个用于部署 Langflow 的 GCP 项目对 Cloud Shell 的基本使用了解Cloud Shell 自带gcloudCLI 与约 5GB 持久化存储。部署脚本参数详解scripts/gcp/deploy_langflow_gcp.sh 开头集中定义了全部资源参数两套脚本标准版与 Spot 版完全一致逐项含义如下# Set the VM, image, and networking configuration VM_NAMElangflow-dev # 实例名后续访问与清理命令都依赖它 IMAGE_FAMILYdebian-11 # 系统镜像族 IMAGE_PROJECTdebian-cloud # 镜像所属的 GCP 项目 BOOT_DISK_SIZE100GB # 启动盘大小 ZONEus-central1-a # 可用区 REGIONus-central1 # 计算区域同时写入 gcloud 本地配置 VPC_NAMEdefault # VPC 网络名 SUBNET_NAMEdefault # 子网名 SUBNET_RANGE10.128.0.0/20 # 子网 CIDR NAT_GATEWAY_NAMEnat-gateway # 预留的 NAT 网关名 CLOUD_ROUTER_NAMEnat-client # 预留的 Cloud Router 名机器类型为n1-standard-44 vCPU / 15 GB 内存直接写死在gcloud compute instances create命令的--machine-type参数中。网络资源的幂等创建逻辑脚本对每个网络资源都遵循先查后建模式因此可安全重复执行计算区域gcloud config set compute/region $REGION把默认区域锁定为us-central1VPCgcloud compute networks list --filtername$VPC_NAME检查default网络是否存在不存在则以--subnet-modecustom创建自定义子网模式允许按区域显式指定 CIDR子网按name$SUBNET_NAME AND region$REGION过滤检查不存在则创建 CIDR 为10.128.0.0/20的子网防火墙规则allow-tcp-7860--allow tcp:7860 --source-ranges 0.0.0.0/0 --direction INGRESS即对全网开放 7860 端口——这正是 Langflow Web 界面的服务端口。注意该规则把来源放到了0.0.0.0/0属于开发演示配置生产环境应把 source-ranges 收敛为办公网段或叠加其他鉴权手段防火墙规则allow-iap允许来自 IAPIdentity-Aware Proxy网段35.235.240.0/20的tcp:80,tcp:443,tcp:22,tcp:3389入站流量用于通过 GCP 控制台的SSH via browser / IAP通道访问实例。脚本中另外定义了NAT_GATEWAY_NAME与CLOUD_ROUTER_NAME两个变量但从脚本主体看当前版本并未实际创建 NAT 网关与 Cloud Router——VM 通过默认外部 IP 直接暴露 7860 端口这两个变量属于预留/历史配置。VM 创建命令脚本最后把启动脚本写入mktemp临时文件再执行gcloud compute instances create $VM_NAME \ --image-family $IMAGE_FAMILY \ --image-project $IMAGE_PROJECT \ --boot-disk-size $BOOT_DISK_SIZE \ --machine-typen1-standard-4 \ --metadata-from-file startup-script$tempfile \ --zone $ZONE \ --network $VPC_NAME \ --subnet $SUBNET_NAME--metadata-from-file startup-script是关键GCP Compute Engine 会在实例每次首次启动时执行该 metadata 中的脚本实现开机即装机、装机即起服。Spot 版脚本 scripts/gcp/deploy_langflow_gcp_spot.sh 与此唯一实质差异是在命令末尾追加了--preemptible标志。启动脚本Langflow 如何被安装并运行两个脚本内嵌的 startup-script 内容略有差别逐行来看标准版scripts/gcp/deploy_langflow_gcp.sh L42-L55#!/bin/bash # Update and upgrade the system apt -y update apt -y upgrade # Install Python 3 pip, Langflow, and Nginx apt -y install python3-pip pip3 install pip -U apt -y update pip3 install langflow langflow run --host 0.0.0.0 --port 7860各步骤的作用apt -y update apt -y upgrade刷新软件源并升级系统包apt -y install python3-pip安装 pippip3 install pip -U把 pip 自身升级到最新版保证后续解析langflow包依赖时元数据兼容pip3 install langflow从 PyPI 安装当前发布版的 Langflow 完整包后端 预构建前端静态资源安装时长通常是整个部署过程的主要耗时点教程估计全流程约 30 分钟langflow run --host 0.0.0.0 --port 7860启动服务。Spot 版脚本scripts/gcp/deploy_langflow_gcp_spot.sh L42-L53的启动脚本更简短apt -y install python3-pip pip install langflow langflow --host 0.0.0.0 --port 7860langflow run是仓库内 CLI 的正式子命令其入口在 src/backend/base/langflow/main.py--host/--port参数控制 FastAPI 应用绑定地址与端口。从 src/backend/base/langflow/main.py 的应用装配代码可以看到服务启动后除了加载组件包bundles、缓存组件类型、创建 starter projects 外还会执行ensure_production_preflight生产预检、初始化数据库与各类后台服务——也就是说在裸 VM 上用 pip 装包直接langflow run拿到的是一个功能完整的开发环境实例而非裁剪版。两点需要留意脚本注释提到安装 Nginx但当前版本的启动脚本正文中并未出现 Nginx 安装与配置步骤Langflow 是直接以 7860 端口裸奔对外的若需要 TLS 或路径代理可参考仓库文档 docs/docs/Deployment/deployment-nginx-ssl.mdx 中介绍的 Nginx 反代 SSL 方案自行叠加。该端口选择与仓库其他部署脚本保持一致例如 scripts/test-api-examples-local.sh 与 DEVELOPMENT.md 中的本地运行流程同样以 7860 作为默认服务端口。执行部署方式一Cloud Shell 向导推荐按照 scripts/gcp/GCP_DEPLOYMENT.md 的指引点击文档中的 Open in Cloud Shell 按钮Standard 与 Spot 各有一个入口分别加载walkthroughtutorial.md与walkthroughtutorial_spot.md教程选择Trust repo然后Start在教程中选定 GCP 项目后执行gcloud config set project your-project-id bash ./deploy_langflow_gcp.sh # 标准版Spot 版为 deploy_langflow_gcp_spot.sh脚本会依次完成检查并创建 VPC/子网/防火墙规则 → 写入启动脚本 → 创建langflow-dev实例 → VM 启动时自动安装并运行 Langflow。全程预计约 30 分钟。方式二手动执行在任意已配置好gcloud的环境中把仓库中scripts/gcp目录下的脚本拉到本地后执行同样两条命令即可脚本本身是幂等的网络资源存在则跳过创建但重复执行gcloud compute instances create会因实例同名而报错属预期行为。访问 Langflow 实例部署完成后VM 的langflow run进程监听在0.0.0.0:7860配合防火墙规则allow-tcp-7860对外可达。两种连接方式来自 scripts/gcp/walkthroughtutorial.md 的 Connect to the Langflow VM 步骤在 GCP 控制台的 VM instances 页面点击实例的外部 IP将协议设为HTTP、端口设为7860或在 Cloud Shell 中直接打印出访问地址export LANGFLOW_IP$(gcloud compute instances list --filterNAMElangflow-dev --formatvalue(EXTERNAL_IP)) echo http://$LANGFLOW_IP:7860在浏览器中打开该 URL即可看到 Langflow 开发环境界面可创建、编辑并运行 Flows。标准 VM 与 Spot 实例的取舍文档对两种实例的定位见 scripts/gcp/GCP_DEPLOYMENT.md标准 VM行为稳定的常规实例启动脚本同样会执行配置环境 → 安装依赖 → 运行应用的完整流程Spot/可抢占实例代码与 VM 行为与常规实例完全相同同样执行 startup-script但当 Google Cloud 需要回收资源时VM 可能随时被终止。因此 Spot 适合容错、无状态或可中断的工作负载——对于丢了就重新拉起的 Langflow 开发/演示环境是合适的但磁盘上的项目数据SQLite 数据库、上传文件、已建的 Flows在实例回收后不保证保留不适合承载需要持久化的正式业务。成本估算文档给出的近似值以下为 scripts/gcp/GCP_DEPLOYMENT.md 中 Pricing 表格的原文数据精确报价请以 GCP Pricing Calculator 为准组件常规价格每小时常规价格每月Spot 价格每小时Spot 价格每月说明100 GB 磁盘-$10/月-$10/月磁盘成本在常规与 Spot VM 上相同VMn1-standard-4$0.15/hr~$108/月~$0.04/hr~$29/月使用 Spot 可显著降低 VM 成本合计$0.15/hr~$118/月~$0.04/hr~$39/月24/7 连续运行一月的总成本VM 磁盘清理资源教程的 Cleanup 章节scripts/gcp/walkthroughtutorial.md给出两层清理删除 VM 实例必须执行否则持续计费gcloud compute instances delete langflow-dev --zone us-central1-a --quiet可选删除网络配置如果项目不再需要这些防火墙规则与网络才执行以下命令gcloud compute firewall-rules delete allow-tcp-7860 --quiet gcloud compute firewall-rules delete allow-iap --quiet gcloud compute networks subnets delete default --region us-central1 --quiet gcloud compute networks delete default --quiet注意allow-iap与default网络/子网在项目中可能被其他资源共享删除前请确认没有别的实例依赖它们。小结Langflow 的 GCP 部署路径用两个高度幂等的 Bash 脚本覆盖了从 VPC/子网/防火墙到 VM 与 Langflow 本体的全部环节核心动作可以概括为gcloud建网与防火墙 →startup-script元数据挂载装机脚本 →pip3 install langflow→langflow run --host 0.0.0.0 --port 7860→ 通过http://EXTERNAL_IP:7860访问。标准版适合需要稳定性的场景Spot 版以约 3 倍的月度成本优势适合无状态的开发与演示环境。由于启动脚本把 7860 端口开放到了0.0.0.0/0且服务以开发模式直接暴露该方案应仅用于开发/评估用途面向公网的正式部署建议在此基础上叠加 Nginx 反代、TLS 与访问控制可参考 docs/docs/Deployment/deployment-nginx-ssl.mdx 与 docs/docs/Deployment/security.mdx。【免费下载链接】langflowLangflow is a powerful tool for building and deploying AI-powered agents and workflows.项目地址: https://gitcode.com/GitHub_Trending/la/langflow创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表