初始化

This commit is contained in:
李琦
2026-08-15 07:41:11 +08:00
commit d9475ac9da
18 changed files with 1109 additions and 0 deletions

39
main.go Normal file
View File

@@ -0,0 +1,39 @@
package main
// nl-pms-apicode-countview 桌面端)的文件存储服务。
// 客户端凭配置密钥上传图片POST /api/v1/files换取可公开访问的
// http URLGET /files/...Markdown 内容图 / 头像等远程场景直接引用该 URL。
//
// 表结构约定:仅 dev 环境config.yaml 里 env: dev启动时 AutoMigrate
// 生产环境启动绝不执行任何 DDL缺表直接退出需先手工执行 init.sql
import (
"flag"
"log"
"os"
"nl-pms-api/internal/config"
"nl-pms-api/internal/database"
"nl-pms-api/internal/router"
)
func main() {
cfgPath := flag.String("config", "config.yaml", "配置文件路径")
flag.Parse()
cfg, err := config.Load(*cfgPath)
if err != nil {
log.Fatalf("[nl-pms-api] %v", err)
}
db, err := database.Open(cfg)
if err != nil {
log.Fatalf("[nl-pms-api] %v", err)
}
if err := os.MkdirAll(cfg.StorageDir, 0755); err != nil {
log.Fatalf("[nl-pms-api] 创建存储目录失败: %v", err)
}
r := router.New(cfg, db)
log.Printf("[nl-pms-api] env=%s listen=%s storage=%s", cfg.Env, cfg.Listen, cfg.StorageDir)
if err := r.Run(cfg.Listen); err != nil {
log.Fatalf("[nl-pms-api] %v", err)
}
}