热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何5分钟跑起来一个完整项目?

今天熊哥和大家聊聊,我怎么在5分钟之内生成一个完整的项目。效果看看这个面板,这居然是我花了5分钟成功跑起来的项目。竟然具备超过三十项功能。还可以直接

今天熊哥和大家聊聊,我怎么在5分钟之内生成一个完整的项目。

效果

看看这个面板,这居然是我花了5分钟成功跑起来的项目。

运行效果

竟然具备超过三十项功能。还可以直接在页面上生成代码。

代码生成器

它是什么?它是 go-gin-api

它支持哪些功能?

可能下面有一些功能你没听过,或者听不懂。没关系,先看看。我以后都会讲。

  • 支持 rate 接口限流
  • 支持 panic 异常时邮件通知
  • 支持 cors 接口跨域
  • 支持 Prometheus 指标记录
  • 支持 Swagger 接口文档生成
  • 支持 GraphQL 查询语言
  • 支持 trace 项目内部链路追踪
  • 支持 pprof 性能剖析
  • 支持 errno 统一定义错误码
  • 支持 zap 日志收集
  • 支持 viper 配置文件解析
  • 支持 gorm 数据库组件
  • 支持 go-redis 组件
  • 支持 RESTful API 返回值规范
  • 支持 生成数据表 CURD、控制器方法 等代码生成器
  • 支持 cron 定时任务,在后台可界面配置
  • 支持 websocket 实时通讯,在后台有界面演示
  • 支持 web 界面,使用的 Light Year Admin 模板

不懂的关键字,如果感兴趣也可以自己下来查查我的宝。

三行代码跑起来

git clone https://github.com/xinliangnote/go-gin-api.git
cd go-gin-api
go run main.go -env dev

跑完以后立马就会弹出一个页面。

不得不说go-gin-api的作者实在想得周全,跑起来不报错,会提示你填写环境信息。

现在已经过了1分钟了,熊哥还有4分钟。

3分钟启一个环境

既然面板提示需要mysqlredis,立马打开hub.docker.com 搜索mysqlredis获得他们的启动命令。

docker容器,可以最快速在本地提供开发环境。不懂就问熊哥

直接在概述里拿到最简单的启动命令如下。

docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag
docker run --name some-redis -d redis

稍做修改,加一下密码。

docker run --name mysql-bear -p 3307:3306 -e MYSQL_ROOT_PASSWORD=mysql-bear -d mysql:latest
docker run --name redis-bear -p 6479:6379 -d redis

docker ps可看到环境搞定了。

  • 我这里把端口映射到主机上了,用的33076479 不然端口只能在容器之间能访问。
  • redis没有密码,mysql密码是mysql-bear

最后1分钟

项目要求先建库。

docker exec -it mysql-bear mysql -pmysql-bear -e "create database bear_gin_db CHARACTER SET utf8 COLLATE utf8_general_ci;"

  • 我直接把用户名密码写命令行了,为了安全建议密码不要写命令行,会要求输入。
  • 创建了名为bear_gin_db的库,字符集是utf8

填入信息

点击初始化项目,在本地重启项目。

go run main.go -env dev

成功啦

后面给大家分别讲解各种概念,和go-gin-api怎么使用。欢迎和我讨论。希望大家真的能快速上手做项目。

一起进步

你好,我是小熊,是一个爱技术但是更爱钱的程序员。上进且佛系自律的人。喜欢发小秘密/臭屁又爱炫耀。

奋斗的大学,激情的现在。赚了钱买了房,写了书出了名。当过面试官,带过徒弟搬过转。

大厂外来务工人员。是我,我是小熊,是不一样的烟火欢迎围观。

我的博客 机智的程序员小熊 欢迎收藏






推荐阅读
  • 帝国cms各数据表有什么用
    CMS教程|帝国CMS帝国cmsCMS教程-帝国CMS精易编程助手源码,ubuntu桥接设置,500错误是tomcat吗,爬虫c原理,php会话包括什么,营销seo关键词优化一般多 ... [详细]
  • 万事起于配置开发环境
    万事起于配置开发环境 ... [详细]
  • Python安全实践:Web安全与SQL注入防御
    本文旨在介绍Web安全的基础知识,特别是如何使用Python和相关工具来识别和防止SQL注入攻击。通过实际案例分析,帮助读者理解SQL注入的危害,并掌握有效的防御策略。 ... [详细]
  • 本文详细介绍了Oracle RMAN中的增量备份机制,重点解析了差异增量和累积增量备份的概念及其在不同Oracle版本中的实现。通过对比两种备份方式的特点,帮助读者选择合适的备份策略。 ... [详细]
  • 本文详细介绍了如何利用go-zero框架从需求分析到最终部署至Kubernetes的全过程,特别聚焦于微服务架构中的网关设计与实现。项目采用了go-zero及其生态组件,涵盖了从API设计到RPC调用,再到生产环境下的监控与维护等多方面内容。 ... [详细]
  • 理解HTTP状态码及其应用
    本文详细解析了HTTP状态码的分类及常见代码的意义,帮助开发者和用户更好地理解和解决网络请求中遇到的问题。 ... [详细]
  • 利用Selenium框架解决SSO单点登录接口无法返回Token的问题
    针对接口自动化测试中遇到的SSO单点登录系统不支持通过API接口返回Token的问题,本文提供了一种解决方案,即通过UI自动化工具Selenium模拟用户登录过程,从浏览器的localStorage或sessionStorage中提取Token。 ... [详细]
  • 美国网络安全:MITRE Shield 积极防御知识库解析
    本文深入解析了MITRE Shield积极防御知识库,探讨其在网络安全领域的应用及意义。 ... [详细]
  • 酷家乐 Serverless FaaS 产品实践探索
    本文探讨了酷家乐在 Serverless FaaS 领域的实践与经验,重点介绍了 FaaS 平台的构建、业务收益及未来发展方向。 ... [详细]
  • 深入探讨Web服务器与动态语言的交互机制:CGI、FastCGI与PHP-FPM
    本文详细解析了Web服务器(如Apache、Nginx等)与动态语言(如PHP)之间通过CGI、FastCGI及PHP-FPM进行交互的具体过程,旨在帮助开发者更好地理解这些技术背后的原理。 ... [详细]
  • Golang与微服务架构:构建高效微服务
    本文探讨了Golang在微服务架构中的应用,包括Golang的基本概念、微服务开发的优势、常用开发工具以及具体实践案例。 ... [详细]
  • 时序数据是指按时间顺序排列的数据集。通过时间轴上的数据点连接,可以构建多维度报表,揭示数据的趋势、规律及异常情况。 ... [详细]
  • 本文详细探讨了 HAProxy 的基本概念及其与 LVS(Linux Virtual Server)的比较,特别是在内核空间与用户空间的工作差异。文章还深入介绍了 HAProxy 独有的数据结构——弹性二叉树,以及其在高并发场景下的表现。 ... [详细]
  • 深入浅出:Hadoop架构详解
    Hadoop作为大数据处理的核心技术,包含了一系列组件如HDFS(分布式文件系统)、YARN(资源管理框架)和MapReduce(并行计算模型)。本文将通过实例解析Hadoop的工作原理及其优势。 ... [详细]
  • 本文档提供了首次周测的答案解析,涵盖特殊符号、命令作用、路径说明以及实战练习等内容。 ... [详细]
author-avatar
个信2502894627
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有