| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- from pydantic_settings import BaseSettings
- from functools import lru_cache
- class Settings(BaseSettings):
- # Database
- DB_HOST: str = "47.99.164.66"
- DB_PORT: int = 3306
- DB_USER: str = "root"
- DB_PASSWORD: str = ""
- DB_NAME: str = "sx"
- # Redis
- REDIS_HOST: str = "47.99.164.66"
- REDIS_PORT: int = 16379
- REDIS_PASSWORD: str = ""
- REDIS_DB: int = 12
- # MinIO
- MINIO_ENDPOINT: str = "47.99.164.66:20004"
- MINIO_ACCESS_KEY: str = "minioadmin"
- MINIO_SECRET_KEY: str = "minioadmin"
- MINIO_BUCKET: str = "ruoyi"
- MINIO_SECURE: bool = False
- # JWT
- JWT_SECRET_KEY: str = "bx-system-jwt-secret-key-2026"
- JWT_ALGORITHM: str = "HS256"
- JWT_ACCESS_TOKEN_EXPIRE_MINUTES: int = 1440
- # App
- APP_HOST: str = "0.0.0.0"
- APP_PORT: int = 8011
- DEBUG: bool = True
- @property
- def DATABASE_URL(self) -> str:
- return (
- f"mysql+pymysql://{self.DB_USER}:{self.DB_PASSWORD}"
- f"@{self.DB_HOST}:{self.DB_PORT}/{self.DB_NAME}?charset=utf8mb4"
- )
- @property
- def REDIS_URL(self) -> str:
- return f"redis://:{self.REDIS_PASSWORD}@{self.REDIS_HOST}:{self.REDIS_PORT}/{self.REDIS_DB}"
- model_config = {"env_file": ".env", "env_file_encoding": "utf-8"}
- @lru_cache
- def get_settings() -> Settings:
- return Settings()
|