Концепції, цінність і типові сценарії
Концепції, цінність і типові сценарії
Preparing Ring content
Preparing Ring content
Preparing Ring content
Використовуйте фільтри Засновник / Розробник у бічній панелі документації. Ця сторінка замінює вигадані інструкції з минулих версій (вигадані TypeScript-менеджери, KPI у $ та мульти-регіональний failover код, якого немає у відкритому репозиторії). Всі дії нижче підтверджуються у data/schema.sql, env.local.template і документації з розгортання.
Клони Ring із DB_BACKEND_MODE=k8s-postgres-fcm (типова продукційна конфігурація) використовують PostgreSQL як джерело істини для користувачів, сутностей, можливостей, магазину, оплат і більшості даних CRM. Бекупи мають охоплювати базу даних, завантажені файли та секрети/конфігурацію — це три окремі артефакти з різними відновлювальними сценаріями.
| Актив | Типове розташування | Пріоритет відновлення |
|---|---|---|
| PostgreSQL | Кластер із DATABASE_URL або Docker-том | Критичний — ідентичності, торгівля, контент |
| Схема + міграції | data/schema.sql, data/migrations/*.sql | Контролюється git; застосовується після відновлення пустої БД |
| Blob / object storage | Роздільні file() провайдери — ring_filebase (типово), vercel_blob, local_storage, або firebase_storage (RingFileBase, Ring CDN) | Високий — зображення товарів, вкладення, генеровані медіа |
| Runtime secrets | .env.local, K8s Secrets (не у публічному репо) | Критичний — Auth.js, WayForPay/Stripe, FCM service account |
| Redis cache | Docker-том ring-redis-data | Низький — можна перебудувати; сесії можуть скидатись |
| FCM tokens | Postgres fcm_tokens JSONB у разі postgres-primary | Покрито бекупом бази даних |
Розгортання Ring — це не просто “сайт”. У Postgres зберігається стан членства, каталоги постачальників, журнали замовлень та оплат, оголошення можливостей та реферали. Втрата бази без точки відновлення — це повторна реєстрація користувачів і ручне звірення оплат.
Використовуйте фільтри Засновник / Розробник у бічній панелі документації. Ця сторінка замінює вигадані інструкції з минулих версій (вигадані TypeScript-менеджери, KPI у $ та мульти-регіональний failover код, якого немає у відкритому репозиторії). Всі дії нижче підтверджуються у data/schema.sql, env.local.template і документації з розгортання.
Клони Ring із DB_BACKEND_MODE=k8s-postgres-fcm (типова продукційна конфігурація) використовують PostgreSQL як джерело істини для користувачів, сутностей, можливостей, магазину, оплат і більшості даних CRM. Бекупи мають охоплювати базу даних, завантажені файли та секрети/конфігурацію — це три окремі артефакти з різними відновлювальними сценаріями.
| Актив | Типове розташування | Пріоритет відновлення |
|---|---|---|
| PostgreSQL | Кластер із DATABASE_URL або Docker-том | Критичний — ідентичності, торгівля, контент |
| Схема + міграції | data/schema.sql, data/migrations/*.sql | Контролюється git; застосовується після відновлення пустої БД |
| Blob / object storage | Роздільні file() провайдери — ring_filebase (типово), vercel_blob, local_storage, або firebase_storage (RingFileBase, Ring CDN) | Високий — зображення товарів, вкладення, генеровані медіа |
| Runtime secrets | .env.local, K8s Secrets (не у публічному репо) | Критичний — Auth.js, WayForPay/Stripe, FCM service account |
| Redis cache | Docker-том ring-redis-data | Низький — можна перебудувати; сесії можуть скидатись |
| FCM tokens | Postgres fcm_tokens JSONB у разі postgres-primary | Покрито бекупом бази даних |
Розгортання Ring — це не просто “сайт”. У Postgres зберігається стан членства, каталоги постачальників, журнали замовлень та оплат, оголошення можливостей та реферали. Втрата бази без точки відновлення — це повторна реєстрація користувачів і ручне звірення оплат.
Використовуйте фільтри Засновник / Розробник у бічній панелі документації. Ця сторінка замінює вигадані інструкції з минулих версій (вигадані TypeScript-менеджери, KPI у $ та мульти-регіональний failover код, якого немає у відкритому репозиторії). Всі дії нижче підтверджуються у data/schema.sql, env.local.template і документації з розгортання.
Клони Ring із DB_BACKEND_MODE=k8s-postgres-fcm (типова продукційна конфігурація) використовують PostgreSQL як джерело істини для користувачів, сутностей, можливостей, магазину, оплат і більшості даних CRM. Бекупи мають охоплювати базу даних, завантажені файли та секрети/конфігурацію — це три окремі артефакти з різними відновлювальними сценаріями.
| Актив | Типове розташування | Пріоритет відновлення |
|---|---|---|
| PostgreSQL | Кластер із DATABASE_URL або Docker-том | Критичний — ідентичності, торгівля, контент |
| Схема + міграції | data/schema.sql, data/migrations/*.sql | Контролюється git; застосовується після відновлення пустої БД |
| Blob / object storage | Роздільні file() провайдери — ring_filebase (типово), vercel_blob, local_storage, або firebase_storage (RingFileBase, Ring CDN) | Високий — зображення товарів, вкладення, генеровані медіа |
| Runtime secrets | .env.local, K8s Secrets (не у публічному репо) | Критичний — Auth.js, WayForPay/Stripe, FCM service account |
| Redis cache | Docker-том ring-redis-data | Низький — можна перебудувати; сесії можуть скидатись |
| FCM tokens | Postgres fcm_tokens JSONB у разі postgres-primary | Покрито бекупом бази даних |
Розгортання Ring — це не просто “сайт”. У Postgres зберігається стан членства, каталоги постачальників, журнали замовлень та оплат, оголошення можливостей та реферали. Втрата бази без точки відновлення — це повторна реєстрація користувачів і ручне звірення оплат.
На ringdom.org для k8s оператор керує CNPG/MinIO бекупами; при самостійному розгортанні розклад dump-а визначаєте ви.
Ring Platform не гарантує встановлені SLA відновлення у відкритому коді. Визначайте цілі для свого клонованого розгортання:
Задокументуйте, хто ухвалює рішення про відновлення (оператор чи девелопер), і де зберігаються дампи (зашифроване об'єктне сховище, поза кластером).
AUTH_SECRET, ключі WayForPay та Firebase service account знаходяться у env/Secrets. Збережіть їх через парольний менеджер чи sealed-secrets — дамп Postgres сам по собі не відновить auth.
file()lib/storage/storage-config.tsNEXT_PUBLIC_STORAGE_PROVIDERSTORAGE_PROVIDERring-config.jsonring_filebasering_filebasevercel_bloblocal_storagefirebase_storagefirebase-full режим (застарілий / спільнота)Коли DB_BACKEND_MODE=firebase-full, Firestore зберігає всю аплікаційну інформацію (shouldUseFirebaseForDatabase() у lib/database/backend-mode-config.ts). Для бекупу використовуйте Google Cloud Firestore export/import у GCS — не ці команди Postgres. Postgres може містити таблиці Auth.js залежно від вашого adapter; перевірте свою конфігурацію у Архітектура аутентифікації.
Відкритий репозиторій не містить маніфестів k8s/ (OSS vs enterprise). Керовані кластери зазвичай використовують CloudNativePG ScheduledBackup для S3-сумісного сховища (наприклад, MinIO). Runbooks операторів — поза межами цього дерева. Синхронізуйте політику зберігання дампів із класами сховища та off-site копіями.
Відновіть останній дамп на staging-БД (ніколи не у production одразу).
Запустіть npm run build (або health check) з staging DATABASE_URL.
Переконайтесь у можливості входу, читанні однієї сутності, одній вибірці можливостей, перевірте /api/health.
Запишіть вік дампа, тривалість відновлення та прогалини — коригуйте розклад при втраті RPO.
Той самий workflow: алерти при збої бекупу.
На ringdom.org для k8s оператор керує CNPG/MinIO бекупами; при самостійному розгортанні розклад dump-а визначаєте ви.
Ring Platform не гарантує встановлені SLA відновлення у відкритому коді. Визначайте цілі для свого клонованого розгортання:
Задокументуйте, хто ухвалює рішення про відновлення (оператор чи девелопер), і де зберігаються дампи (зашифроване об'єктне сховище, поза кластером).
AUTH_SECRET, ключі WayForPay та Firebase service account знаходяться у env/Secrets. Збережіть їх через парольний менеджер чи sealed-secrets — дамп Postgres сам по собі не відновить auth.
file()lib/storage/storage-config.tsNEXT_PUBLIC_STORAGE_PROVIDERSTORAGE_PROVIDERring-config.jsonring_filebasering_filebasevercel_bloblocal_storagefirebase_storagefirebase-full режим (застарілий / спільнота)Коли DB_BACKEND_MODE=firebase-full, Firestore зберігає всю аплікаційну інформацію (shouldUseFirebaseForDatabase() у lib/database/backend-mode-config.ts). Для бекупу використовуйте Google Cloud Firestore export/import у GCS — не ці команди Postgres. Postgres може містити таблиці Auth.js залежно від вашого adapter; перевірте свою конфігурацію у Архітектура аутентифікації.
Відкритий репозиторій не містить маніфестів k8s/ (OSS vs enterprise). Керовані кластери зазвичай використовують CloudNativePG ScheduledBackup для S3-сумісного сховища (наприклад, MinIO). Runbooks операторів — поза межами цього дерева. Синхронізуйте політику зберігання дампів із класами сховища та off-site копіями.
Відновіть останній дамп на staging-БД (ніколи не у production одразу).
Запустіть npm run build (або health check) з staging DATABASE_URL.
Переконайтесь у можливості входу, читанні однієї сутності, одній вибірці можливостей, перевірте /api/health.
Запишіть вік дампа, тривалість відновлення та прогалини — коригуйте розклад при втраті RPO.
Той самий workflow: алерти при збої бекупу.
На ringdom.org для k8s оператор керує CNPG/MinIO бекупами; при самостійному розгортанні розклад dump-а визначаєте ви.
Ring Platform не гарантує встановлені SLA відновлення у відкритому коді. Визначайте цілі для свого клонованого розгортання:
Задокументуйте, хто ухвалює рішення про відновлення (оператор чи девелопер), і де зберігаються дампи (зашифроване об'єктне сховище, поза кластером).
AUTH_SECRET, ключі WayForPay та Firebase service account знаходяться у env/Secrets. Збережіть їх через парольний менеджер чи sealed-secrets — дамп Postgres сам по собі не відновить auth.
file()lib/storage/storage-config.tsNEXT_PUBLIC_STORAGE_PROVIDERSTORAGE_PROVIDERring-config.jsonring_filebasering_filebasevercel_bloblocal_storagefirebase_storagefirebase-full режим (застарілий / спільнота)Коли DB_BACKEND_MODE=firebase-full, Firestore зберігає всю аплікаційну інформацію (shouldUseFirebaseForDatabase() у lib/database/backend-mode-config.ts). Для бекупу використовуйте Google Cloud Firestore export/import у GCS — не ці команди Postgres. Postgres може містити таблиці Auth.js залежно від вашого adapter; перевірте свою конфігурацію у Архітектура аутентифікації.
Відкритий репозиторій не містить маніфестів k8s/ (OSS vs enterprise). Керовані кластери зазвичай використовують CloudNativePG ScheduledBackup для S3-сумісного сховища (наприклад, MinIO). Runbooks операторів — поза межами цього дерева. Синхронізуйте політику зберігання дампів із класами сховища та off-site копіями.
Відновіть останній дамп на staging-БД (ніколи не у production одразу).
Запустіть npm run build (або health check) з staging DATABASE_URL.
Переконайтесь у можливості входу, читанні однієї сутності, одній вибірці можливостей, перевірте /api/health.
Запишіть вік дампа, тривалість відновлення та прогалини — коригуйте розклад при втраті RPO.
Той самий workflow: алерти при збої бекупу.