b9e6060610
Co-authored-by: Cursor <cursoragent@cursor.com>
89 lines
1.8 KiB
Markdown
89 lines
1.8 KiB
Markdown
# Решение проблем
|
||
|
||
## Диагностика одной командой
|
||
|
||
```bash
|
||
bash /opt/shop/scripts/diagnose-502.sh
|
||
```
|
||
|
||
---
|
||
|
||
## 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)
|