mirror of https://github.com/Xhofe/alist
55 lines
1.3 KiB
Go
55 lines
1.3 KiB
Go
package conf
|
|
|
|
type Database struct {
|
|
Type string `json:"type"`
|
|
User string `json:"user"`
|
|
Password string `json:"password"`
|
|
Host string `json:"host"`
|
|
Port int `json:"port"`
|
|
Name string `json:"name"`
|
|
TablePrefix string `json:"table_prefix"`
|
|
DBFile string `json:"db_file"`
|
|
SslMode string `json:"ssl_mode"`
|
|
}
|
|
|
|
type Scheme struct {
|
|
Https bool `json:"https"`
|
|
CertFile string `json:"cert_file"`
|
|
KeyFile string `json:"key_file"`
|
|
}
|
|
|
|
type CacheConfig struct {
|
|
Expiration int64 `json:"expiration"`
|
|
CleanupInterval int64 `json:"cleanup_interval"`
|
|
}
|
|
|
|
type Config struct {
|
|
Address string `json:"address"`
|
|
Port int `json:"port"`
|
|
Assets string `json:"assets"`
|
|
Database Database `json:"database"`
|
|
Scheme Scheme `json:"scheme"`
|
|
Cache CacheConfig `json:"cache"`
|
|
TempDir string `json:"temp_dir"`
|
|
}
|
|
|
|
func DefaultConfig() *Config {
|
|
return &Config{
|
|
Address: "0.0.0.0",
|
|
Port: 5244,
|
|
Assets: "https://npm.elemecdn.com/alist-web@$version/dist",
|
|
TempDir: "data/temp",
|
|
Database: Database{
|
|
Type: "sqlite3",
|
|
Port: 0,
|
|
TablePrefix: "x_",
|
|
DBFile: "data/data.db",
|
|
SslMode: "disable",
|
|
},
|
|
Cache: CacheConfig{
|
|
Expiration: 60,
|
|
CleanupInterval: 120,
|
|
},
|
|
}
|
|
}
|