| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- package cmd
- import (
- "github.com/gin-gonic/gin"
- "github.com/runningwater/gohub/bootstrap"
- "github.com/runningwater/gohub/pkg/config"
- "github.com/runningwater/gohub/pkg/console"
- "github.com/runningwater/gohub/pkg/logger"
- "github.com/spf13/cobra"
- )
- var CmdServe = &cobra.Command{
- Use: "serve",
- Short: "Start web server",
- Long: "Start the server - Gin server",
- Run: runWeb,
- Args: cobra.NoArgs,
- }
- func runWeb(cmd *cobra.Command, args []string) {
- // 设置 gin 的运行模式, 支持 debug, release, test
- // release 模式会屏蔽调试信息,官方建议生产环境中使用
- // 非 release 模式 gin 终端打印太多信息,干扰到我们程序中的 Log
- // 故此设置为 release 模式
- gin.SetMode(gin.ReleaseMode)
- // gin 框架初始化
- router := gin.New()
- // 初始化路由绑定
- bootstrap.SetupRoute(router)
- // 运行服务
- err := router.Run(":" + config.Get("app.port"))
- if err != nil {
- logger.ErrorString("CMD", "serve", err.Error())
- console.Exit("Unable to start server, error:" + err.Error())
- }
- }
|