使用 Cursor 和 Devbox 快速开发并上线 Gin 项目
作为开发者,最让我们头疼的事情是什么?那必须是环境配置、版本控制以及各种部署配置等等繁琐的工作。
想象一下,如果你只需点击几下鼠标,就能拥有一个完全配置好的开发环境,支持从 Java 到 Python,从 React 到 Vue 的各种主流技术栈。
而且可以自动分配域名、HTTPS 证书,免去繁琐的配置流程,让您专注于代码本身。而且写完代码之后可以一键部署到生产环境,不用写什么 Dockerfile,也不用写什么 K8s 编排文件,啥都不需要写,直接就上线了,那该有多爽?

Sealos Devbox 确实就实现了上述所有的设想,它的适用场景非常广泛:
- 微服务开发: 帮助开发者快速搭建和管理多个微服务开发环境,方便开发者进行调试和测试。
- Web 开发: 帮助 Web 开发者快速搭建前端和后端开发环境,并自动配置域名和 HTTPS 证书,方便开发者进行开发和部署。
- 远程团队协作: 帮助远程团队成员共享开发环境,提高团队协作效率。
- 二次开发开源应用: 帮助开发者快速搭建开源应用的开发环境,并进行二次开发和定制,例如,你可以使用 Devbox 快速搭建 WordPress 的开发环境,并修改其主题和插件。
- 教学和培训: 帮助老师快速创建统一的教学环境,方便学生进行练习和实验,例如,老师可以使用 Devbox 为学生创建 Python 编程的开发环境。

下面我将以创建一个 Gin 框架项目为例,演示如何快速上手 Devbox。
快速上手 Devbox
1. 创建 Gin 框架项目
首先进入 Sealos 桌面,然后打开 Debox 应用,创建一个新项目。Devbox 支持多种主流语言与框架,这里我们选择体验 Gin 框架:

CPU 和内存可根据需求调整,选择更低配置更省钱。网络配置无需更改,系统会自动分配 HTTPS 域名,通过该域名即可访问 Devbox 中的 8080 端口。

选择框架后点击创建,几秒钟即可启动开发环境。
2. 使用 Cursor 连接开发环境
在操作选项中选择使用 Cursor 连接:

首次打开会提示安装 Devbox 插件,安装后即可自动连接开发环境。


是不是非常简单?直接省略了配置域名解析、申请 SSL 证书,配置网关等与开发无关的繁琐操作,爽!
3. 编译并运行项目
打开终端,直接输入 go run main.go 启动项目。然后就可以通过之前分配的域名访问服务。

4. 使用 Cursor 编写代码
例如,我们可以使用 Cursor 编写一个代理到 OpenAI 的代码。

啪的一下就写好了。由于国内无法访问 OpenAI,所以我们可以将 URL 改成 FastGPT 的地址。

在 Cursor 终端中退出之前运行的进程,再次输入 go run main.go 启动应用,使用分配的 HTTPS 域名进行测试:

也可以使用命令行测试:
curl --location --request POST 'https://bwgbqnreaetk.hzh.sealos.run/api/v1/chat/completions' \
--header 'Authorization: Bearer fastgpt-tfW22BXI20dLBj3jG9KYtkGw3NpkE5Tzq9zSEnYZ3d0PLvM400ZACErbuNf' \
--header 'Content-Type: application/json' \
--data-raw '{
"model": "gpt-4o",
"messages": [
{
"role": "user",
"content": "你好"
}
]
}'
部署到生产环境
代码测试完成后,即可部署到生产环境,部署完成后可以自动更新和故障自恢复,提升运维效率和系统稳定性。
首先要在 Cursor 终端中使用命令 go build main.go 将源代码编译成二进制文件。
然后在 Devbox 列表中点击操作中的详情,在历史版本中点击发布版本,填写信息后点击发版。

注意: 发版会暂时停止 Devbox,发版后会自动启动,请先保存好项目避免丢失数据。

稍等片刻,即可在版本列表中找到发版信息,点击上线后会跳转到部署页面,点击部署应用即可部署到生产环境。


生产环境分配的 HTTPS 域名与开发环境独立,部署后即可通过生产环境域名访问服务。

使用生产环境域名进行测试:

结语
Devbox 以其极速、便捷、低成本的特点,为开发者提供了全新的开发体验。它简化了开发流程,提升了开发效率,解决了开发环境与生产环境一致性等难题,让开发者能够更加专注于代码的创作。如果您正在寻找一款高效、易用的云端开发工具,Devbox 绝对是您的不二之选!
立即体验 Devbox,开启你的极速云端开发之旅!
使用 Cursor 和 Devbox 快速开发并上线 Gin 项目的更多相关文章
- 使用Vue2+webpack+Es6快速开发一个移动端项目,封装属于自己的jsonpAPI和手势响应式组件
导语 最近看到不少使用vue制作的音乐播放器,挺好玩的,本来工作中也经常使用Vue,一起交流学习,好的话点个star哦 本项目特点如下 : 1. 原生js封装自己的跨域请求函数,支持promise调用 ...
- 13个能快速开发android的经典项目
一.okhttp一个让网络请求更简单的框架 项目地址 https://github.com/jeasonlzy/okhttp-OkGo 二. TwinklingRefreshLayout-下拉刷新和上 ...
- Web API应用架构在Winform混合框架中的应用(4)--利用代码生成工具快速开发整套应用
前面几篇介绍了Web API的基础信息,以及如何基于混合框架的方式在WInform界面里面整合了Web API的接入方式,虽然我们看似调用过程比较复杂,但是基于整个框架的支持和考虑,我们提供了代码生成 ...
- Hibernate学习笔记五:反向工程快速开发
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6768513.html 一:反向工程 Myeclipse提供由 数据库表 生成 java pojo 和 hib ...
- C#.NET 大型企业信息化系统集成快速开发平台 4.2 版本 - 几十套业务系统集中统一授权管理实现经验分享
由于这几年互联网电商的快速发展,快递公司也进入了快速发展的绝好快速成长期.随着社会的强劲需求公司的业绩年年攀新高.快速发展的公司都需要有强大的IT信息系统,硬件设备基本上款到了货也可以到了,但是软件系 ...
- 开发者必知的几款App快速开发工具
“我有一个好创意,就差一个CTO……” ,这是今年炒的比较火的一句话. “原生APP开发难度大,周期长,成本高,还没上线市场已经被占领了.这个有没有解决方案?” “APP版本迭代更新,都是企业的一道难 ...
- 快速开发之代码生成器(asp.net mvc4 + easyui + knockoutjs)
一.前言 作为一个码农这么多年,一直在想怎么提高我们的编码效率,关于如何提高编码效率,我自己的几点体会 1.清晰的项目结构,要编写代码的地方集中 2.实现相同功能的代码量少并且清晰易懂 3.重复或有规 ...
- 开发者如何利用工具快速开发出完美APP
文|移动互联网李建华 微信:ydhlwdyq 传统的个人开发者,要想开发出一个完美的APP要 经过以下几个过程:搭建开发环境,写代码,写统计系统,开发即将完成后,要购买服务器,然后把程序布置到服务器上 ...
- 开发者必知的8款App快速开发工具
开发者必知的8款App快速开发工具 “我有一个好创意,就差一个CTO……” “原生APP开发难度大,周期长,成本高,还没上线市场已经被占领了.” “APP版本迭代更新,都是企业的一道难关,没有一个一劳 ...
- Sublime插件库新成员基于APICloud快速开发跨平台App
互联网时代强调用户体验,那什么是HTML5跨平台App开发者的编程体验?“不剥夺.不替换开发者喜欢的开发工具,就是人性化的用户体验”,APICloud给出了这样的答案! 重磅发布“多开发工具支持策略” ...
随机推荐
- boulanni / theano-hf
https://github.com/boulanni/theano-hf https://people.duke.edu/~hpgavin/ExperimentalSystems/lm.pdf ht ...
- 【转载】 Alpha-beta剪枝
原地址:https://www.jiqizhixin.com/graph/technologies/56dbb21e-c3f9-4e06-b16a-2e28f25b26c8 ============= ...
- C语言编写Linux终端环境下无缓冲键盘输入 ,并识别上下左右光标键
自己重构了游戏<2048>并且重构了它的最好启发式AI解法,并上传到了Gitee中的 鬼&泣 / 2048-heuristic的devilmaycry分支,在这个过程中编写了一个C ...
- css 样式 element.style 覆盖问题
问题: 我们在写网页定制样式的时候发现展示效果跟我们预想的不一样? 打开F12一看原来是element.style 覆盖的我定义的效果. 解决: 只要在定义的内容后面加上 !important 就行啦 ...
- [CEOI2018] Lottery 题解
前言 题目链接:洛谷. 题意简述 给出序列 \(a_1 \ldots a_n\) 和常数 \(l \leq n\),定义: \[\operatorname{dis}(i, j) = \sum _ {k ...
- abc366
E 解题思路 这题求的是满足\(\sum^n_{i=1}(|x-x_i|+|y-y_i|)\leq D\) 的坐标\((x,y)\) 的数目,由于是求和,所以\(x,y\) 之间是相互独立的 第一步, ...
- Pintia 天梯地图 dijkstra进阶
7-14 天梯地图 - SMU 2024 spring 天梯赛3(补题) (pintia.cn) dijkstra进阶做法,包含路径记录,以及按权重统计路径条件等; 不过最开始我一直将优先队列开的最大 ...
- springboot2集成oauth2坑二(The bean 'scopedTarget.oauth2ClientContext', defined in class path resource )
码云地址:https://gitee.com/lpxs/lp-springcloud.git 有问题可以多沟通:136358344@qq.com. 由于使用Enableoauth2sso注解一直报错, ...
- 「TCP/UDP」一个端口号可以同时被两个进程绑定吗?
一.1个端口号可以同时被两个进程绑定吗? 根据端口号的绑定我们分以下几种情况来讨论: 2个进程分别建立TCP server,使用同一个端口号8888 2个进程分别建立UDP server,使用同一个端 ...
- Python新手爬虫一:爬取影片名称评分等
豆瓣网站:https://movie.douban.com/chart 先上最后的代码: from bs4 import BeautifulSoup from lxml import html imp ...