package main import ( "embed" "log" "net/http" "os" "os/signal" "syscall" "github.com/gin-gonic/gin" ) //go:embed "html" var indexHTML embed.FS func main() { r := gin.Default() r.GET("/", index) r.GET("/api/update", update) srv := &http.Server{ Addr: ":2169", Handler: r, } go func() { if err := srv.ListenAndServe(); err != nil && err != http.ErrServerClosed { log.Fatalf("listen: %s\n", err) } }() quit := make(chan os.Signal, 10) signal.Notify(quit, syscall.SIGINT, syscall.SIGTERM) <-quit log.Println("Shutdown Server ...") }