46 lines
1.0 KiB
Go
46 lines
1.0 KiB
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"log"
|
|
"os"
|
|
|
|
"github.com/asdine/storm/v3"
|
|
"github.com/gofiber/fiber/v2"
|
|
"github.com/gofiber/fiber/v2/middleware/logger"
|
|
"github.com/rs/zerolog"
|
|
)
|
|
|
|
type Server struct {
|
|
Config *Config
|
|
Database *storm.DB
|
|
WebServer *fiber.App
|
|
LogFile *os.File
|
|
Log zerolog.Logger
|
|
}
|
|
|
|
func main() {
|
|
server := Server{}
|
|
err := LoadConfig(&server)
|
|
if err != nil {
|
|
log.Fatal("Unable to load in config file: ", err)
|
|
}
|
|
fmt.Println("Server: ", server.Config)
|
|
app := fiber.New()
|
|
app.Use(logger.New(logger.Config{
|
|
Output: server.LogFile,
|
|
TimeZone: server.Config.Timezone,
|
|
}))
|
|
|
|
server.WebServer = app
|
|
server.WebServer.Server().Logger.Printf("Webserver Started")
|
|
app.Server().Logger.Printf("HERE!")
|
|
|
|
server.WebServer.Get("/", func(c *fiber.Ctx) error {
|
|
return c.SendString("Hello, World 👋 RELOADED!")
|
|
})
|
|
// fmt.Println("Port listen on: ", os.Getenv("PORT"))
|
|
// fmt.Println("Timezone is: ", os.Getenv("TZ"))
|
|
server.WebServer.Listen(fmt.Sprintf(":%s", server.Config.Server.Port))
|
|
}
|