今天熊哥和大家聊聊,我怎么在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怎么使用。欢迎和我讨论。希望大家真的能快速上手做项目。

一起进步

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

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

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

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

如何5分钟跑起来一个完整项目?相关推荐

  1. 如何使用graphpad做柱形图_系列文章 如何使用PaddleDetection做一个完整项目(三)...

    系列文章 如何使用PaddleDetection做一个完整项目(三) 该文章是PaddleDetection的完结篇,请参考之前两篇文章 https://zhuanlan.zhihu.com/p/10 ...

  2. 案例分享,从0到1了解一个完整项目

    产品新人进入公司,由于经验不足,通常都是负责产品部分模块,很少有机会能接触到从0到1的完整项目,对产品的全局思考会比较欠缺. 刀哥分享一个去年参与的项目,这个项目刀哥全程参与,产品经理也就是刀哥一个人 ...

  3. 一个完整项目的流程都涉及哪些内容

    最近在跟着老师学做一个有关图书馆的项目,目标是做出一个移动端的包含校内图书馆内容的图书馆.上完第一节课,梳理一下有关内容. 第一节课主要介绍了做一个完整的项目的流程都有哪些,涉及哪方面的内容,具体如下 ...

  4. 如何跑通一个java项目

    查找项目代码的途径:github,码云,掘金网 以小说精品屋项目(掘金网)为例: 先读Readme(这里会介绍项目结构和技术选型),这里还会告诉你们怎么跑起来这个项目,比如让你先安装数据库,然后... ...

  5. 一个完整项目的学习--

    1.1  开发背景 ××信息科技有限公司是一家集数据通信.系统集成.电话增值服务于一体的高科技公司.公司为了扩大规模,增强企业的竞争力,决定向多元化发展,借助Internet在国内的快速发展,聚集部分 ...

  6. git 创建webpack项目_使用webpack手动创建一个完整项目的全过程

    1.创建文件夹"webpack-study" 2.使用webstrom打开文件夹所在位置.在根目录上创建一个文件,文件命名为"src",在src文件下新建css ...

  7. 一个完整项目的生命周期,不是上线就结束了

    往往在定义项目阶段时,会按照上面这个基本步骤来做计划和执行,但对于软件环境比较复杂的情况,比如:预发布环境.生产环境网络条件,安全要求都不同的时候,在考虑项目范围和计划时,要考虑到实际的实施因素. 下 ...

  8. Oracle-SQL语法基础【以一个完整项目为例】

    --log in conn / as sysdba; show user; conn /as sysdba 无需密码直接可以连接 SYS用数据库的超级用户,数据库内很多重要的东西(数据字典表.内置包. ...

  9. koa mysql_使用koa+mysql实现一个完整的项目

    前言 前端工程师开始自己的一个完整项目,从数据库到服务端再到前端,从Node开始应该是比较容易的,至于数据库是什么不需要太关心,初学的目的是完整的实现一个前后端的项目,那么无论mongodb或是mys ...

最新文章

  1. 深入理解Java虚拟机(第三弹)- JVM 内存分配与回收策略原理,从此告别 JVM 内存分配文盲
  2. MVC3.0 Razor实现Ajax数据分页
  3. 21副酷炫的动图让你了解各种数学概念
  4. 直播预告 | 企业CICD规模化落地
  5. 关于海康官网接口文档中:取流URL有效时间为5分钟表述歧义的说明
  6. 面试:高并发下的流量控制
  7. 宁波Uber优步司机奖励政策(12月21日到12月27日)
  8. 反射——类(Class)
  9. (转)RabbitMQ学习之主题topic(java)
  10. android:layout_gravity和android:gravity属性的区别(转)
  11. 每天一道剑指offer-链表中环的入口节点
  12. Java之校园卡管理系统
  13. 博弈论读书笔记(二):纳什均衡与野猪博弈
  14. 深圳连续社保的重要性 - 社保为什么不能中断
  15. 补天:给黑客一个平台 换网络一份安宁!
  16. windows企微应用双开/多开
  17. 在配有通道的计算机系统中,用户程序需要输出时,引起的中断是,自考计算机系统结构试题_全国2009年7月自考试卷...
  18. 手机163邮箱怎么登录?163手机邮箱登录页面是?
  19. 【详解】面试必问:SpringBoot自动配置原理
  20. CSP认证202209-3:防疫大数据

热门文章

  1. centos7_srs4.10_webrtc_rtmp_rtsp
  2. 【好用软件推荐系列】 第一弹 - TreeSize Free
  3. 月薪4万的人,为什么还是那么穷?
  4. word跨页的表格默认增加上表头
  5. 直流无刷电机的正弦波控制
  6. Python实现将图片批量转化成素描图
  7. 故障隔离率lru_利用电网阻尼率的精确测量实现配网线路绝缘状态实时监控
  8. 智能手表PSRAM芯片存储方案QPI接口APS6404L
  9. c语言 转换字母 顺序结构,C语言程序设计 顺序结构程序设计 C教学设计3单元V1.0.doc...
  10. 二值图像的噪点去除算法