news 2026/9/7 5:45:30

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
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/可抢占实例部署脚本(在标准版基础上追加--preemptible
scripts/gcp/walkthroughtutorial.md标准 VM 的 Cloud Shell 分步教程(约 45 分钟)
scripts/gcp/walkthroughtutorial_spot.mdSpot 实例的 Cloud Shell 分步教程

注意:Cloud Shell 打开后务必先选择Trust repo,否则部分gcloud命令在临时(ephemeral)Cloud Shell 环境中无法运行。

该方案在 GCP 上创建的是一台Debian 11 VM,通过启动脚本(startup-script metadata)安装 Python 包管理器、Langflow 本体,然后在TCP 7860 端口上以监听0.0.0.0的方式对外提供 Web 界面。

前置条件

  • 一个具备创建资源权限的 GCP 账号(需要开通计费,教程的walkthrough-project-setup显式启用了compute.googleapis.comcontainer.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_NAME="langflow-dev" # 实例名,后续访问与清理命令都依赖它 IMAGE_FAMILY="debian-11" # 系统镜像族 IMAGE_PROJECT="debian-cloud" # 镜像所属的 GCP 项目 BOOT_DISK_SIZE="100GB" # 启动盘大小 ZONE="us-central1-a" # 可用区 REGION="us-central1" # 计算区域(同时写入 gcloud 本地配置) VPC_NAME="default" # VPC 网络名 SUBNET_NAME="default" # 子网名 SUBNET_RANGE="10.128.0.0/20" # 子网 CIDR NAT_GATEWAY_NAME="nat-gateway" # 预留的 NAT 网关名 CLOUD_ROUTER_NAME="nat-client" # 预留的 Cloud Router 名

机器类型为n1-standard-4(4 vCPU / 15 GB 内存),直接写死在gcloud compute instances create命令的--machine-type参数中。

网络资源的幂等创建逻辑

脚本对每个网络资源都遵循"先查后建"模式,因此可安全重复执行:

  1. 计算区域gcloud config set compute/region $REGION把默认区域锁定为us-central1
  2. VPCgcloud compute networks list --filter="name=$VPC_NAME"检查default网络是否存在,不存在则以--subnet-mode=custom创建(自定义子网模式,允许按区域显式指定 CIDR);
  3. 子网:按name=$SUBNET_NAME AND region=$REGION过滤检查,不存在则创建 CIDR 为10.128.0.0/20的子网;
  4. 防火墙规则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 收敛为办公网段或叠加其他鉴权手段;
  5. 防火墙规则allow-iap:允许来自 IAP(Identity-Aware Proxy)网段35.235.240.0/20tcp:80,tcp:443,tcp:22,tcp:3389入站流量,用于通过 GCP 控制台的"SSH via browser / IAP"通道访问实例。

脚本中另外定义了NAT_GATEWAY_NAMECLOUD_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-type=n1-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

各步骤的作用:

  1. apt -y update && apt -y upgrade:刷新软件源并升级系统包;
  2. apt -y install python3-pip:安装 pip;
  3. pip3 install pip -U:把 pip 自身升级到最新版,保证后续解析langflow包依赖时元数据兼容;
  4. pip3 install langflow:从 PyPI 安装当前发布版的 Langflow 完整包(后端 + 预构建前端静态资源),安装时长通常是整个部署过程的主要耗时点,教程估计全流程约 30 分钟;
  5. 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 7860

langflow 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 的指引:

  1. 点击文档中的 "Open in Cloud Shell" 按钮(Standard 与 Spot 各有一个入口,分别加载walkthroughtutorial.mdwalkthroughtutorial_spot.md教程);
  2. 选择Trust repo,然后Start
  3. 在教程中选定 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" 步骤):

  1. 在 GCP 控制台的 VM instances 页面点击实例的外部 IP,将协议设为HTTP、端口设为7860
  2. 或在 Cloud Shell 中直接打印出访问地址:
export LANGFLOW_IP=$(gcloud compute instances list --filter="NAME=langflow-dev" --format="value(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 上相同
VM(n1-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-iapdefault网络/子网在项目中可能被其他资源共享,删除前请确认没有别的实例依赖它们。

小结

Langflow 的 GCP 部署路径用两个高度幂等的 Bash 脚本覆盖了从 VPC/子网/防火墙到 VM 与 Langflow 本体的全部环节,核心动作可以概括为:gcloud建网与防火墙 →startup-script元数据挂载装机脚本 →pip3 install langflowlangflow 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),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/7 5:44:54

WPS正则表达式引擎差异详解:VBA、JS宏与表格函数的避坑指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/7 5:44:14

AI编译器入门路线:从LLVM到TVM/MLIR的完整实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/7 5:43:33

用吴麒课件自学自动控制原理:从建模到校正的完整闭环

简介&#xff1a;吴麒版《自动控制原理》课件是一份面向自动化、电子工程、航空航天等专业学生及考研、自学者的系统学习资料&#xff0c;以经典教材为蓝本&#xff0c;深入讲解控制系统建模、稳定性分析、频域响应、控制器设计与系统校正等核心内容。压缩包为RAR格式&#xff…

作者头像 李华
网站建设 2026/9/7 5:43:26

AGI时代前端工程师的核心竞争力:判断力与责任不可替代

最近在技术社区刷到 Yuchen Jin 关于 AGI 的那番讨论&#xff0c;说实话&#xff0c;第一反应是松了口气。大家都在喊 AI 要接管一切的时候&#xff0c;有人站出来说"该做的活一样都跑不掉"&#xff0c;这话听着就踏实。他的观点其实不复杂&#xff1a;AGI 很强&…

作者头像 李华