如何5分鐘跑起來一個完整專案?

2023-02-24 12:02:38

今天熊哥和大家聊聊,我怎麼在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怎麼使用。歡迎和我討論。希望大家真的能快速上手做專案。

一起進步

你好,我是小熊,是一個愛技術但是更愛錢的程式設計師。上進且佛系自律的人。喜歡發小祕密/臭屁又愛炫耀。

奮鬥的大學,激情的現在。賺了錢買了房,寫了書出了名。當過面試官,帶過徒弟搬過轉。

大廠外來務工人員。是我,我是小熊,是不一樣的煙火歡迎圍觀。

我的部落格 機智的程式設計師小熊 歡迎收藏