4 Star 6 Fork 3

Humpback / humpback-agent

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
main.go 1.73 KB
一键复制 编辑 原始数据 按行查看 历史
package main
import "github.com/astaxie/beego"
import "github.com/astaxie/beego/plugins/cors"
import "gitee.com/humpbacks/common/models"
import "gitee.com/humpbacks/humpback-agent/config"
import "gitee.com/humpbacks/humpback-agent/controllers"
import "gitee.com/humpbacks/humpback-agent/routers"
import "gitee.com/humpbacks/humpback-center/cluster/types"
import (
"os"
"os/signal"
"syscall"
)
func main() {
config.Init()
config.SetVersion("1.3.7")
controllers.Init()
var conf = config.GetConfig()
beego.BConfig.MaxMemory = conf.DockerComposePackageMaxSize
composeStorage, err := models.NewComposeStorage(conf.DockerComposePath)
if err != nil {
beego.Error("compose storage error, " + err.Error())
return
}
routers.Init(composeStorage)
beego.InsertFilter("*", beego.BeforeRouter, cors.Allow(&cors.Options{
AllowOrigins: []string{"*"},
AllowMethods: []string{"GET", "POST", "PUT", "DELETE"},
AllowHeaders: []string{"Origin", "Accept", "Content-Type", "Authorization"},
AllowCredentials: true,
}))
beego.SetLogFuncCall(true)
beego.SetLevel(conf.LogLevel)
ipAddr, bindPort, err := config.GetNodeHTTPAddrIPPort()
if err != nil {
beego.Error("agent httpaddr error:" + err.Error())
}
beego.BConfig.Listen.HTTPPort = bindPort
if conf.DockerClusterEnabled {
clusterOptions := types.NewNodeRegisterOptions(ipAddr, bindPort, &conf)
if err := types.NodeRegister(clusterOptions); err != nil {
beego.Error("cluster node register error:" + err.Error())
return
}
}
go signalListen()
beego.Run()
}
func signalListen() {
c := make(chan os.Signal)
signal.Notify(c, syscall.SIGINT, syscall.SIGTERM)
for {
<-c
types.NodeClose()
os.Exit(0)
}
}
Go
1
https://gitee.com/humpbacks/humpback-agent.git
git@gitee.com:humpbacks/humpback-agent.git
humpbacks
humpback-agent
humpback-agent
master

搜索帮助