mirror of
https://github.com/alireza0/x-ui.git
synced 2026-03-13 21:13:09 +00:00
更新大量功能
This commit is contained in:
56
main.go
56
main.go
@@ -1,18 +1,25 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"flag"
|
||||
"fmt"
|
||||
"github.com/op/go-logging"
|
||||
"log"
|
||||
"os"
|
||||
"os/signal"
|
||||
"syscall"
|
||||
_ "unsafe"
|
||||
"x-ui/config"
|
||||
"x-ui/database"
|
||||
"x-ui/logger"
|
||||
"x-ui/web"
|
||||
"x-ui/web/global"
|
||||
)
|
||||
|
||||
func main() {
|
||||
// this function call global.setWebServer
|
||||
func setWebServer(server global.WebServer)
|
||||
|
||||
func runWebServer() {
|
||||
log.Printf("%v %v", config.GetName(), config.GetVersion())
|
||||
|
||||
switch config.GetLogLevel() {
|
||||
@@ -36,7 +43,11 @@ func main() {
|
||||
var server *web.Server
|
||||
|
||||
server = web.NewServer()
|
||||
go server.Run()
|
||||
setWebServer(server)
|
||||
err = server.Start()
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
sigCh := make(chan os.Signal, 1)
|
||||
signal.Notify(sigCh, syscall.SIGHUP)
|
||||
@@ -46,10 +57,45 @@ func main() {
|
||||
if sig == syscall.SIGHUP {
|
||||
server.Stop()
|
||||
server = web.NewServer()
|
||||
go server.Run()
|
||||
setWebServer(server)
|
||||
err = server.Start()
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
} else {
|
||||
return
|
||||
continue
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
func v2ui(dbPath string) {
|
||||
// migrate from v2-ui
|
||||
}
|
||||
|
||||
func main() {
|
||||
if len(os.Args) < 2 {
|
||||
runWebServer()
|
||||
return
|
||||
}
|
||||
|
||||
runCmd := flag.NewFlagSet("run", flag.ExitOnError)
|
||||
|
||||
v2uiCmd := flag.NewFlagSet("v2-ui", flag.ExitOnError)
|
||||
var dbPath string
|
||||
v2uiCmd.StringVar(&dbPath, "db", "/etc/v2-ui/v2-ui.db", "set v2-ui db file path")
|
||||
|
||||
switch flag.Arg(0) {
|
||||
case "run":
|
||||
runCmd.Parse(os.Args[2:])
|
||||
runWebServer()
|
||||
case "v2-ui":
|
||||
v2uiCmd.Parse(os.Args[2:])
|
||||
v2ui(dbPath)
|
||||
default:
|
||||
fmt.Println("excepted 'run' or 'v2-ui' subcommands")
|
||||
fmt.Println()
|
||||
runCmd.Usage()
|
||||
fmt.Println()
|
||||
v2uiCmd.Usage()
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user