Sealos Devbox 基础教程:使用 Cursor 从零开发一个完整的项目
作者:熊猫Jay,上市公司技术负责人,破局AI 提示词、AI编程教练、通往AGI之路内容共创者
最近发现身边越来越多人尝试用 Cursor 写代码、开发小产品了。
如果想要实现商业化或引流,我们的小工具和小产品必须发布到互联网上,这样才能被更多人看到并使用。
可一到要部署上线,很多非技术的朋友们都抓瞎了:
不仅要安装 Python,还要设置各种复杂的编译环境参数,
然后是云服务器要采购、配置、部署代码,
最后还要搞什么 https 证书...
有人可能会告诉你:“别担心,百度、AI 搜索,能找到一堆教程的”。
说实话,先不说他们愿不愿意去搜,即使搜到了也很难明白。
今天我要告诉你一个好消息:不用记命令、不用配环境、不用碰服务器,3分钟就能轻松把项目部署上线。
想知道是什么神仙操作吗?接着往下看教程
安装
在安装前,我们需要做一些准备事项:
- 魔法上网
- 本地安装 Cursor,可参考文章:有了 Cursor 后,真没理由说不会写代码了
第一步,注册登录 Sealos,登录完成后,进入首页,点击 Devbox。

过去 熊猫 Jay一直推荐大家学习 Python,这里以 Python 项目为例来演示。
除此之外,还支持 Go、Java、Node.js、PHP、Rust 等主流的编程语言和框架。

创建项目后,在操作列选择 Cursor 后,记得要单击它。


点击 Open Cursor 后,将会自动打开本地的 Cursor 编程工具。再点击 Install Extension and Open URI,安装必备的一些插件。

我们需要等待推荐的插件都安装完成,这里可能需要花费一些时间。插件出现 Disable 或者 Uninstall 的按钮则代表安装成功。

初体验
在绑定了 Devbox 项目的 Cursor 界面,我们看到了初始化的代码结构。
我们来演示下如何启动代码。
我们在左下方右击空白处,点击 Open in integrated Terminal 打开控制台。

输入命令 : python3 hello.py , 不出现任何报错,则代表启动成功。
其他编程语言,或者框架,具体启动命令以实际为准,如果不清楚,可以直接问 Cursor。

我们打开本地浏览器,查看下运行效果。这里的端口是 8080,那么地址为:http://localhost:8080


这次的分享主题是「代码快速上线」,那这个 demo 在互联网上怎么查看效果呢?
我们回到 Devbox 项目中,点击外网地址,就可以在公网看到效果啦。


当然,这只是用初始化的代码演示的效果。接下来,我们来展示下修改部分代码后,怎么更新线上环境。
这里以修改网页内容为例,加上 I am Jay 的字符,记得保存代码。

在控制台(Terminal)按 Ctrl + C 关闭应用,再输入命令 python3 hello.py 重新启动。

无论本地还是线上都会立刻更新成功,不需要做任何多余的动作,线上代码就生效了。
但是,我们并没有完成线上发布哦,毕竟电脑不可能一直运行程序,后续步骤会介绍。


创建 AI 聊天页面
「Hello World」,毕竟太简单了。
接下来,我们以一个真实有效的小案例 -- 接入智谱大模型的AI 聊天工具 来展示下全过程。
一)提前准备事项
因为需要接入智谱的 API,所以我们需要提前做一些准备:
- 智谱 API 接入案例代码
- 智谱 API Key
- 本地安装智谱 SDK
1、智谱 API 接入案例代码:

基于代码案例和需求,编写简单的提示词。
帮我根据下方的代码请求和响应示例,创建一个 AI 聊天页面。
需求:用户在页面聊天窗口输入信息,点击发送后,将收到 AI 流式输出的回复效果。
代码请求示例:
from zhipuai import ZhipuAI
client = ZhipuAI(api_key="") # 请填写您自己的APIKey
response = client.chat.completions.create(
model="glm-4", # 请填写您要调用的模型名称
messages=[
{"role": "system", "content": "你是一个乐于回答各种问题的小助手,你的任务是提供专业、准确、有洞察力的建议。"},
{"role": "user", "content": "我对太阳系的行星非常感兴趣,尤其是土星。请提供关于土星的基本信息,包括它的大小、组成、环系统以及任何独特的天文现象。"},
],
stream=True,
)
for chunk in response:
print(chunk.choices[0].delta)
代码响应示例:
```
data: {"id":"8313807536837492492","created":1706092316,"model":"glm-4","choices":[{"index":0,"delta":{"role":"assistant","content":"土"}}]}
data: {"id":"8313807536837492492","created":1706092316,"model":"glm-4","choices":[{"index":0,"delta":{"role":"assistant","content":"星"}}]}
....
data: {"id":"8313807536837492492","created":1706092316,"model":"glm-4","choices":[{"index":0,"delta":{"role":"assistant","content":","}}]}
data: {"id":"8313807536837492492","created":1706092316,"model":"glm-4","choices":[{"index":0,"delta":{"role":"assistant","content":"主要由"}}]}
data: {"id":"8313807536837492492","created":1706092316,"model":"glm-4","choices":[{"index":0,"finish_reason":"length","delta":{"role":"assistant","content":""}}],"usage":{"prompt_tokens":60,"completion_tokens":100,"total_tokens":160}}
data: [DONE]
```
2、生成并复制 API Key
地址:https://bigmodel.cn/usercenter/apikeys

3、启动文件中加入智谱 SDK
为了确保接下来能够正常上线,我们需在进入 Devbox 绑定的 Cursor 代码里的启动文件 -- entrypoint.sh,添加智谱 SDK 的安装命令。
pip install --upgrade zhipuai -i https://mirrors.aliyun.com/pypi/simple/
entrypoint.sh 完整内容如下:
#!/bin/bash
python3 -m venv venv # 创建虚拟环境
source venv/bin/activate # 激活虚拟环境
pip install --upgrade zhipuai -i https://mirrors.aliyun.com/pypi/simple/
python3 hello.py
二)基于 Cursor 生成 AI 聊天页面
打开 Composer,输入提前准备的提示词。

配置提前准备好的 API Key,并确定所使用的智谱模型版本。glm-4-flash 是免费的,其他模型官方也提供了免费额度。

控制台输入命令 ./entrypoint.sh 启动项目,打开网页查看效果。

AI 正常回复了,但是发现一个问题,没有体现流式输出的效果。重新让 Cursor 优化下。

再重启下。这次发现 AI 回复的效果实现流式输出了,但是用户的聊天内容丢失了。

修复 Bug 时,我们尽量做到详细描述复现步骤和错误症状,输入整理后的提示词,请 Cursor 修复。

这次修复成功了,用户聊天记录保留了,且 AI 回复也实现了流式输出的效果。

最后,整体功能就绪后,再优化下页面。

搞定!

三)发布上线
1、首先进行 Devbox 项目详情,点击发布版本。

填写本地发版的版本号和描述信息。

注意,发布将暂时停止 Devbox,发版后会自动启动。

稍等一会,在版本历史界面我们点击 上线,将会跳转到正式环境的配置界面。

2、按照需求配置正式环境的硬件参数。

如果未来,我们的网站流量过大,我们可以点击「部署模式」为弹性伸缩,这样服务器会根据流量和负载的情况来扩充配置,避免程序宕机。

前面这段话和弹性伸缩相关的图片,对于非技术的朋友可能会有点难以理解。
举个例子:
某宝在双十一之前,流量一般,所以硬件要求不高,一台服务器就够了。
但是双十一到了,为了分担流量高峰所带来的压力,保证软件应用不挂掉,系统会自动扩充到 100台服务器。
双十一过去后,流量慢慢变小了,这时候为了避免浪费资源,系统自动缩小到 5 台甚至更少的服务器。
这样的部署方式就是「弹性伸缩」。
3、配置网络(可选)
官方提供的域名没什么特定含义。我们可以自定义网站域名。若不需要,可跳过此步骤。


进入我们自己的阿里云域名列表,选择一个域名,点击右侧的解析。

添加一条记录。
记录类型 选择 CNAME,主机记录 根据喜好填写一个自定义的二级域名, 记录值 填写 Devbox 提供的域名,最后确定。

为了检查配置是否生效,点击新增记录右侧的 生效检测。当解析结果和配置的记录值一致,则代表成功了。

再回到 Devbox 中配置自定义域名,点击确认。

最后,部署应用。

出现 running 的字眼,则代表运行成功。

如果出现 error,可以点击右侧日志按钮进行查看。

最后,使用自己的域名来访问线上的页面,成功。
抛开代码编程和调试,仅针对部署过程,基本上只需花费 3 分钟左右。

四、总结
看完是不是发现,原来部署也可以这么简单?
从前我们总觉得,不会编程就做不了产品。可现在不一样了。
我们不需要成为全能选手,
不需要精通所有技术细节,
更不需要被那些专业术语所困扰。
技术在进步,工具在迭代。
Cursor 帮我们写代码,Sealos 帮我们一键部署,曾经让人头疼的技术环节,现在都变得如此简单。
就算是作为程序员的我,每次用这套组合来做技术验证、快速实现想法,都会感叹:要是早几年有这些工具就好了,能少走多少弯路啊!
如果你正在用 Cursor 开发自己的项目,别被那些技术障碍吓退。
按照今天的方法试试看,你也能轻松把创意变成一个真实的产品,让所有人都能用上你的作品。
如果觉得不错,随手点个赞、在看、转发三连吧。
Sealos Devbox 基础教程:使用 Cursor 从零开发一个完整的项目的更多相关文章
- 适合新手:从零开发一个IM服务端(基于Netty,有完整源码)
本文由“yuanrw”分享,博客:juejin.im/user/5cefab8451882510eb758606,收录时内容有改动和修订. 0.引言 站长提示:本文适合IM新手阅读,但最好有一定的网络 ...
- Java基础教程1:环境配置及第一个HelloWorld.java
本文主要介绍JDK环境配置.Sublime Text3配置及第一个HelloWorld.Java程序.运行环境为Win10系统,使用JDK1.8版本. 1. JDK下载及环境配置 1.1 JDK下载 ...
- Python基础教程(020)--集成开发环境IDE简介--Pycharm
前言 学会掌握Pycharm工具 内容 集成了开发软件需要的所有工具 1,图形用户界面 2,代码编译器(支持代码补全,自动缩进) 3,编译器,解释器 4,调试器(断点,单步执行) Pycharm介绍 ...
- Python基础教程(011)--程序开发中的错误及原因
前言 排查代码开发中的错误 内容 1,编写的程序不能正常执行,或者执行的结果不是我们期望的 2,俗称bug,是程序开发常见的,初学常见的原因有 手误 对已经学习的知识点理解不足 对语音还有需要学习和提 ...
- 【Nodejs】326- 从零开发一个node命令行工具
本文由 IMWeb 社区授权转载自腾讯内部 KM 论坛.点击阅读原文查看 IMWeb 社区更多精彩文章. 什么是命令行工具? 命令行工具(Cmmand Line Interface)简称cli,顾名思 ...
- 【vue2.x基础】用npm起一个完整的项目
1. 安装vue npm install vue -g 2. 安装vue-cli脚手架 npm install vue-cli -g 3. 安装webpack npm install webpack ...
- 如何从零开发一个NuGet软件包?
作者:依乐祝 首发地址:https://www.cnblogs.com/yilezhu/p/14175019.html 我想目前每个.net开发人员都应该知道nuget.org和NuGet软件包吧.但 ...
- swift语言注册非免费苹果账号iOS游戏框架Sprite Kit基础教程
swift语言注册非免费苹果账号iOS游戏框架Sprite Kit基础教程 1.2.3 注册非免费苹果账号swift语言注册非免费苹果账号iOS游戏框架Sprite Kit基础教程 免费的苹果账号在 ...
- RabbitMq基础教程之基本概念
RabbitMq基础教程之基本概念 RabbitMQ是一个消息队列,和Kafka以及阿里的ActiveMQ从属性来讲,干的都是一回事.消息队列的主要目的实现消息的生产者和消费者之间的解耦,支持多应用之 ...
- ASP.NET Core 属性路由 - ASP.NET Core 基础教程 - 简单教程,简单编程
原文:ASP.NET Core 属性路由 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 属性路由 经过前面章节的学习,想必你已经对 ASP.NET Core ...
随机推荐
- Angular Material 18+ 高级教程 – CDK Overlay
Overlay, Dialog, Modal, Popover 傻傻分不清楚 参考: Medium – Modal?Dialog?你真的知道他們是什麼嗎? Popups, dialogs, toolt ...
- Hugging Face NLP课程学习记录 - 2. 使用 Hugging Face Transformers
Hugging Face NLP课程学习记录 - 2. 使用 Hugging Face Transformers 说明: 首次发表日期:2024-09-19 官网: https://huggingfa ...
- QT原理与源码分析之对象级QT事件过滤器
本文简略介绍了QT原理与源码分析中的QT对象级事件过滤器的自定义过滤函数.对象级事件过滤器的安装过程,以及安装函数的源码实现. 自定义QT事件过滤器的过滤函数的实现: 事件过滤器被调用时执行的函数代码 ...
- 一组.NET MAUI绘制的开源控件 - AlohaKit
前言 今天大姚给大家分享一组.NET MAUI绘制的开源.免费(MIT License)UI控件库:AlohaKit. MAUI介绍 .NET MAUI是一个开源.免费(MIT License)的跨平 ...
- placement new --特殊的内存分配
placement new 是 C++ 中的一种特殊的内存分配技术,用来在指定的内存地址上直接构造对象.与普通的 new 运算符不同,placement new 并不分配新的内存,而是在已经分配好的内 ...
- USB眼图常识
最近一段时间,项目需求,需要对USB眼图进行摸底测试.测试过程很简单,然而debug之路却很不简单.不简单往往也就意味着带来了不少收获. 示波器跨接在接收滤波器的输出端,调整示波器扫描周期,使示波器水 ...
- USB协议基础篇
初次接触USB的同学,可能会被里面各种名词给搞晕,下面就来梳理一下这些知识,希望能帮助大家理解USB. 一,从最常见的名词说起 1.1 什么是USB 这个我就不多解释了,直译就是通用串行总线.再不明白 ...
- ZRAM的Swap功能和 SWAP分区有什么区别
ZRAM(压缩内存块设备)和传统的SWAP分区都是Linux系统中用来增加可用内存的方法,但它们的工作原理和实现方式有很大的区别: ZRAM 压缩内存:ZRAM使用压缩算法将数据存储在内存中.这样,当 ...
- icache的dcache区别
iCache是指指令缓存,DCache是指数据缓存.iCache是专门用于存储指令的高速缓存,DCache是用于存储数据的高速缓存.iCache用于存储指令,在CPU执行时将指令从iCache中读取, ...
- ByConity与主流开源OLAP引擎(Clickhouse、Doris、Presto)性能对比分析
引言: 随着数据量和数据复杂性的不断增加,越来越多的企业开始使用OLAP(联机分析处理)引擎来处理大规模数据并提供即时分析结果.在选择OLAP引擎时,性能是一个非常重要的因素. 因此,本文将使用TPC ...