6dd5f64ddb
modified: serv_nginx/api_bb/go.mod modified: serv_nginx/api_bb/go.sum modified: serv_nginx/api_bb/internal/config/config.go modified: serv_nginx/api_bb/pkg/database/database.go change database to postgresql form sqlite
36 lines
993 B
Go
36 lines
993 B
Go
package main
|
|
|
|
import (
|
|
"log"
|
|
"net/http"
|
|
|
|
"go-rest-api/internal/config"
|
|
"go-rest-api/internal/routes"
|
|
"go-rest-api/pkg/database"
|
|
)
|
|
|
|
func main() {
|
|
// Load configuration
|
|
cfg := config.Load()
|
|
|
|
log.Printf("Connecting to database with DSN: %s", maskPassword(cfg.DatabaseURL))
|
|
|
|
// Initialize database
|
|
db, err := database.InitDB(cfg.DatabaseURL)
|
|
if err != nil {
|
|
log.Fatal("Failed to connect to database:", err)
|
|
}
|
|
|
|
// Initialize router
|
|
router := routes.SetupRouter(db)
|
|
|
|
log.Printf("Server starting on port %s", cfg.Port)
|
|
log.Fatal(http.ListenAndServe(":"+cfg.Port, router))
|
|
}
|
|
|
|
// maskPassword скрывает пароль в логах
|
|
func maskPassword(dsn string) string {
|
|
// Простая маскировка пароля в DSN для безопасности
|
|
// В реальном приложении лучше использовать более надежный метод
|
|
return dsn
|
|
} |