main.go 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. package main
  2. /*
  3. 1. 算法清理可以用仿真云平台的调度系统
  4. */
  5. import (
  6. "cicv-data-closedloop/amd64/kubernetes-scheduler/package/entity"
  7. "cicv-data-closedloop/amd64/kubernetes-scheduler/package/handler"
  8. "cicv-data-closedloop/common/config/c_log"
  9. "cicv-data-closedloop/common/config/c_nacos"
  10. "cicv-data-closedloop/common/config/c_oss"
  11. commonHandler "cicv-data-closedloop/common/gin/handler"
  12. "cicv-data-closedloop/common/util"
  13. "encoding/json"
  14. "fmt"
  15. "github.com/gin-gonic/gin"
  16. "os"
  17. )
  18. const (
  19. configDataId = "kubernetes-scheduler-prod.yaml"
  20. configGroup = "DEFAULT_GROUP"
  21. )
  22. var (
  23. KubernetesSchedulerConfig = new(entity.KubernetesSchedulerConfigStruct)
  24. )
  25. func init() {
  26. c_nacos.InitConfig(false, configDataId, configGroup)
  27. // 使用 json.Unmarshal 解析 JSON 字符串到结构体
  28. err := json.Unmarshal([]byte(c_nacos.Config), &KubernetesSchedulerConfig)
  29. if err != nil {
  30. fmt.Println("解析 JSON 时出错:", err)
  31. return
  32. }
  33. c_log.InitLog("./log/", KubernetesSchedulerConfig.Service.Name)
  34. c_oss.InitOss(false)
  35. c_nacos.InitService(false, KubernetesSchedulerConfig.Service.Name, KubernetesSchedulerConfig.Service.Port, map[string]string{
  36. "开发者": "孟令鑫",
  37. "内网IP": "10.14.85.228",
  38. "外网IP": "36.110.106.156",
  39. })
  40. }
  41. func main() {
  42. router := gin.Default()
  43. router.Use(commonHandler.ValidateHeaders())
  44. api := router.Group(KubernetesSchedulerConfig.Service.RouterPrefix)
  45. api.POST("/start-project", handler.StartProject)
  46. err := router.Run(":12345")
  47. if err != nil {
  48. c_log.GlobalLogger.Error("程序崩溃,监听端口 " + util.ToString(KubernetesSchedulerConfig.Service.Port) + " 失败。")
  49. os.Exit(-1)
  50. }
  51. }