Files
nl-pms-api/main.go
2026-08-15 07:41:11 +08:00

40 lines
1.2 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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)
}
}