42177555ac
Co-authored-by: Cursor <cursoragent@cursor.com>
102 lines
2.3 KiB
Markdown
102 lines
2.3 KiB
Markdown
# Решение проблем
|
||
|
||
## Диагностика одной командой
|
||
|
||
```bash
|
||
bash /opt/shop/shop10/scripts/diagnose-502.sh
|
||
```
|
||
|
||
(замените путь на каталог вашего клона — где есть `package.json`)
|
||
|
||
## scripts/server-update.sh: No such file or directory
|
||
|
||
Вы не в каталоге репозитория или клон в подпапке (например `/opt/shop/shop10`):
|
||
|
||
```bash
|
||
ls /opt/shop/shop10/package.json
|
||
bash /opt/shop/shop10/scripts/server-update.sh
|
||
```
|
||
|
||
В `deploy/shop.service` укажите тот же путь в `WorkingDirectory` и `EnvironmentFile`.
|
||
|
||
---
|
||
|
||
## HTTP 502 (Caddy / браузер)
|
||
|
||
**SSL работает, страница 502** — Caddy жив, backend (Node) не отвечает.
|
||
|
||
```bash
|
||
curl -s http://127.0.0.1:3000/health
|
||
systemctl status shop
|
||
journalctl -u shop -n 30 --no-pager
|
||
```
|
||
|
||
Пока `/health` не OK — Caddy будет отдавать 502.
|
||
|
||
---
|
||
|
||
## ECONNREFUSED 127.0.0.1:5432
|
||
|
||
PostgreSQL не запущен или не установлен.
|
||
|
||
```bash
|
||
bash /opt/shop/scripts/fix-db-connection.sh
|
||
```
|
||
|
||
Или вручную:
|
||
|
||
```bash
|
||
systemctl start postgresql
|
||
pg_isready -h 127.0.0.1 -p 5432
|
||
bash scripts/setup-postgres-ubuntu.sh
|
||
```
|
||
|
||
Проверьте `DATABASE_URL` в `/opt/shop/.env`.
|
||
|
||
---
|
||
|
||
## Служба shop сразу останавливается
|
||
|
||
В логе только «База уже содержит товары» без строки `Магазин: http://...`:
|
||
|
||
```bash
|
||
cd /opt/shop && git pull # нужен исправленный seed.js (v0.10.0+)
|
||
systemctl restart shop
|
||
```
|
||
|
||
---
|
||
|
||
## dubious ownership (git pull)
|
||
|
||
Не делайте `chown -R www-data /opt/shop`.
|
||
|
||
```bash
|
||
chown -R root:root /opt/shop
|
||
git config --global --add safe.directory /opt/shop
|
||
git pull
|
||
```
|
||
|
||
---
|
||
|
||
## Docker: контейнер app unhealthy
|
||
|
||
```bash
|
||
docker compose logs app
|
||
docker compose logs postgres
|
||
docker compose up -d --build
|
||
```
|
||
|
||
---
|
||
|
||
## Docker: нет связи с БД
|
||
|
||
Проверьте, что `DATABASE_URL` в compose указывает на хост `postgres`, а не `127.0.0.1` (внутри контейнера app).
|
||
|
||
---
|
||
|
||
## Полезные ссылки
|
||
|
||
- [Установка Docker](Install-Docker)
|
||
- [Установка без Docker](Install-Native)
|
||
- [Репозиторий](https://git.evilfox.cc/test/shop10)
|