Frp/config/redis.go
2024-12-27 19:41:54 +08:00

50 lines
855 B
Go

package config
import (
"fmt"
"os"
"github.com/redis/go-redis/v9"
)
// Redis配置结构
type RedisConfig struct {
Host string
Port string
Password string
}
// 获取Redis配置
func GetRedisConfig() *RedisConfig {
config := &RedisConfig{
Host: os.Getenv("REDIS_HOST"),
Port: os.Getenv("REDIS_PORT"),
Password: os.Getenv("REDIS_PASSWORD"),
}
// 设置默认值
if config.Host == "" {
config.Host = "localhost"
}
if config.Port == "" {
config.Port = "6379"
}
if config.Password == "" {
config.Password = ""
}
return config
}
// 创建Redis客户端
func NewRedisClient(db int) (*redis.Client, error) {
config := GetRedisConfig()
client := redis.NewClient(&redis.Options{
Addr: fmt.Sprintf("%s:%s", config.Host, config.Port),
Password: config.Password,
DB: db,
})
return client, nil
}