docs(deploy): чинить SQLITE_READONLY после перехода на не-root образ
quality / commitlint (push) Skipped
quality / changes (push) Successful in 6s
quality / web (push) Skipped
quality / api (push) Skipped
quality / docker-check (push) Skipped
CD / quality (push) Successful in 8s
CD / publish (push) Successful in 24s

./data и app.db, созданные старым root-контейнером, нужно один раз
отдать uid 1000 (node) — иначе migrateSchema падает с SQLITE_READONLY.
This commit is contained in:
Denozordec
2026-09-23 18:45:48 +07:00
parent 2e947b5a31
commit 5acff590bc
+12
View File
@@ -61,6 +61,7 @@ Traefik для сертификата создаёт TXT `_acme-challenge.auth
```bash
mkdir -p /opt/auth-portal/data
chown -R 1000:1000 /opt/auth-portal/data # контейнер работает от uid 1000 (node)
cd /opt/auth-portal
# из репозитория или curl:
@@ -147,6 +148,17 @@ docker compose down
# НЕ делайте down -v без бэкапа — сотрёт ACME (auth_portal_traefik_letsencrypt)
```
> **Переход с root-образа (версии до не-root).** Контейнер теперь работает от
> uid 1000 (`node`). Если `./data` и `app.db` созданы старым контейнером под
> root, при старте будет `SqliteError: SQLITE_READONLY`. Один раз выполнить:
>
> ```bash
> cd /opt/auth-portal
> docker compose down
> sudo chown -R 1000:1000 ./data
> docker compose up -d
> ```
---
## Что внутри compose