diff --git a/backend/app/config.py b/backend/app/config.py index 00c3738..65d2d70 100644 --- a/backend/app/config.py +++ b/backend/app/config.py @@ -1,12 +1,21 @@ -from pydantic_settings import BaseSettings +from pydantic_settings import BaseSettings, SettingsConfigDict class Settings(BaseSettings): + """Конфигурация приложения. Все значения берутся из переменных окружения + (или из файла `.env` в текущей директории при локальной разработке).""" + # Общие database_url: str = "sqlite:///./panel.db" secret_key: str = "change-me-please-super-secret" access_token_expire_minutes: int = 60 * 12 + # CORS + allow_origins: str = "http://localhost:5173,http://127.0.0.1:5173" + + # Логирование + log_level: str = "INFO" + # Proxmox pve_host: str = "https://proxmox.local:8006" pve_token_name: str = "root@pam!panel" @@ -14,12 +23,17 @@ class Settings(BaseSettings): pve_verify_ssl: bool = False pve_node: str = "pve" - # Пул VMID, из которого будут выделяться номера новым машинам + # Пул VMID, из которого выделяются номера новым машинам. + # Реальный VMID всё равно берётся через /cluster/nextid — этот диапазон + # используется только для валидации/отображения. vmid_range_start: int = 9000 vmid_range_end: int = 9999 - class Config: - env_file = ".env" + model_config = SettingsConfigDict( + env_file=".env", + env_file_encoding="utf-8", + extra="ignore", + ) settings = Settings()