Use bind mounts for pgdata and dp_keys in docker-compose

Matches the production compose so the stack data lives next to the
compose file and can be backed up with the server. ticket_uploads stays
a named volume to avoid losing existing attachments on pull.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
mrleo1nidandClaude Opus 5.5 committed 2026-10-06 19:45:17 +03:00
1 parent 4b34c37ce3
commit d7743977a1
5 files changed
+19 -5

No files matched your search

+2 -2
View File
@@ -97,11 +97,11 @@ PnvPanel — backend на **ASP.NET Core (.NET 10)** по принципам **C
- **Background jobs**: `TrafficSyncService`, `NodeHealthCheckService`, `TrafficRetentionService`,
`BillingService` (`BackgroundService` + `PeriodicTimer`).
- **Secrets**: `DataProtectionSecretProtector : ISecretProtector` (шифрование паролей нод at-rest,
ASP.NET Core Data Protection, key-ring на томе `dp_keys`).
ASP.NET Core Data Protection, key-ring в bind-маунте `./dp_keys`).
- **Telegram**: `TelegramNotifier : ITelegramNotifier` — отправка DM-уведомлений через `ITelegramBotClient`.
- **Storage**: `DiskFileStorage : IFileStorage` — вложения тикетов поддержки и картинки для markdown
(`MediaImage`), файлы на диске под GUID-именем (`FileStorage:RootPath`, том `ticket_uploads` в
docker-compose, как `dp_keys`).
docker-compose).
> **SignalR-пуш физически лежит в `PnvPanel.Api/Hubs/`, не в `Infrastructure`.**
> `SignalRRealtimeNotifier : IRealtimeNotifier` нужен `IHubContext<PanelHub>`, а сам `PanelHub`