使用 Cursor 和 Devbox 快速开发并上线 Gin 项目

news/2024/10/23 19:06:43

作为开发者,最让我们头疼的事情是什么?那必须是环境配置、版本控制以及各种部署配置等等繁琐的工作。

想象一下,如果你只需点击几下鼠标,就能拥有一个完全配置好的开发环境,支持从 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,开启你的极速云端开发之旅!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/75161.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

UML与面向对象程序设计原则

UML与面向对象程序设计原则 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、掌握面向对象程序设计中类与类之间的关系以及对应的UML类图; 2、理解面向对象程序设计原则。[实验任务一]:UML复习 阅读教材第一章复习UML,回答下述问题: 面向对象程序设计中类与…

实验2 类和对象_基础编程1

实验任务1 代码: t.h:1 #pragma once2 3 #include<string>4 5 class T {6 public:7 T(int x = 0, int y = 0);8 T(const T& t);9 T(T&& t); 10 ~T(); 11 void adjust(int ratio); 12 void display()const; 13 private: 14 int …

第一次团队作业——“行趣”智能旅游软件

作业所属的课程 软件工程2024作业要求 2024秋软工实践团队作业-第一次作业的目标 开发一款基于LLM大模型接口的软件,为这个软件做需求分析团队名称 十光年团队成员学号-姓名 施靖杰-102201327邓才慧-102201102陈宇尧-102201119陆旭东-102201118黄宇舟-102201331邱予-102202121…

七月在线公开课笔记-二十三-

七月在线公开课笔记(二十三) 人工智能—机器学习中的数学(七月在线出品) - P1:Taylor展式与拟牛顿 - 七月在线-julyedu - BV1Vo4y1o7t1 这次我们探讨它的展示与它的相关应用,如米牛顿。我们首先给出塔的展示的本身的,它的定义,它的展示的公式的本身。然后我们利用它来计…

七月在线公开课笔记-二十七-

七月在线公开课笔记(二十七) 人工智能—机器学习公开课(七月在线出品) - P25:【公开课】数据挖掘与机器学习基础 - 七月在线-julyedu - BV1W5411n7fg 可以是吧?好,那么我们稍等一下啊,稍等一下我们。在8点钟我们就准时开始我们的一个直播的内容。对。那么各位同学之前有…

七月在线公开课笔记-二十六-

七月在线公开课笔记(二十六) 人工智能—机器学习公开课(七月在线出品) - P18:世界杯数据分析案例 - 七月在线-julyedu - BV1W5411n7fg 然后我们来做个分析吧,所以大家喜欢做一些比赛的分析,对吧?然后大家最关注的当然是决赛半决赛啊,可能也多多分析一下,分析到4分之1…

10.22-10.23

A.异或和 CF1261F 做过类似的题的话,\(O(n^2\log^2v\log(n^2\log^2v))\) 应该算是暴力分了。 显然这过不了,不然就不是 *3100 了。 主要的瓶颈在于异或完后产生了大量的线段,而且里面大多数是没用的。 于是赛时写出了一个绝唐的优化点击查看代码 for (int i = 0;i < seg[…

window下安装并使用nvm(含卸载node、卸载nvm、全局安装npm),解决老代码使用的node.js 比较旧

一、卸载node如果你已经安装了node,那么你需要先卸载node(不然安装nvm可能会失败),如果你没有安装那直接跳过这一步到下一步。 打开控制面板 -> 打开程序和功能 -> 右上角搜索输入node -> 右键卸载 为了确保彻底删除node在看看你的node安装目录中还有没有node文件…