Compare commits

..

3 Commits

5 changed files with 93 additions and 20 deletions

4
.gitignore vendored
View File

@ -1,6 +1,10 @@
# Dependencies # Dependencies
node_modules/ node_modules/
# Build output
dist/
build/
# Environment files # Environment files
.env .env
.env.local .env.local

60
DATABASE_SETUP.md Normal file
View File

@ -0,0 +1,60 @@
# Настройка базы данных для Prism Messenger
## Использование удаленной базы данных
Проект настроен для работы с удаленной PostgreSQL базой данных.
### Конфигурация
1. Скопируйте `.env.example` в `.env`:
```bash
cd backend
cp .env.example .env
```
2. Обновите параметры подключения в `.env`:
```env
DATABASE_HOST=85.234.110.60
DATABASE_PORT=5432
DATABASE_USERNAME=prism
DATABASE_PASSWORD=oaZ3-4Y6yf
DATABASE_NAME=prism
```
### Проверка подключения
Если возникают проблемы с подключением:
1. **Проверьте правильность credentials**
- Убедитесь, что пароль скопирован правильно
- Проверьте, что в пароле нет лишних пробелов
2. **Проверьте доступ с вашего IP**
- Возможно, нужно добавить ваш IP в whitelist базы данных
- Свяжитесь с администратором БД
3. **Тестирование подключения через psql**:
```bash
psql 'postgresql://prism:oaZ3-4Y6yf@85.234.110.60:5432/prism'
```
### Альтернативная локальная разработка
Если нет доступа к удаленной БД, можно использовать локальную:
1. Раскомментируйте сервис postgres в `docker-compose.yml`
2. Запустите: `docker-compose up -d`
3. Обновите `.env` для локальной БД:
```env
DATABASE_HOST=localhost
DATABASE_PORT=5432
DATABASE_USERNAME=postgres
DATABASE_PASSWORD=postgres
DATABASE_NAME=prism_messenger
```
## Миграции
При первом запуске NestJS автоматически создаст необходимые таблицы благодаря `synchronize: true` в конфигурации TypeORM.
**Важно**: В продакшене обязательно установите `synchronize: false` и используйте миграции!

View File

@ -24,8 +24,15 @@
- Docker и Docker Compose - Docker и Docker Compose
- Expo Go на мобильном устройстве - Expo Go на мобильном устройстве
### 1. Запуск базы данных ### 1. Настройка базы данных
#### Вариант A: Удаленная база данных (рекомендуется)
Проект настроен для работы с удаленной PostgreSQL.
См. [DATABASE_SETUP.md](DATABASE_SETUP.md) для деталей конфигурации.
#### Вариант B: Локальная база данных
```bash ```bash
# Раскомментируйте сервис postgres в docker-compose.yml
docker-compose up -d docker-compose up -d
``` ```

View File

@ -1,7 +1,7 @@
DATABASE_HOST=localhost DATABASE_HOST=your-database-host
DATABASE_PORT=5432 DATABASE_PORT=5432
DATABASE_USERNAME=postgres DATABASE_USERNAME=your-database-username
DATABASE_PASSWORD=postgres DATABASE_PASSWORD=your-database-password
DATABASE_NAME=prism_messenger DATABASE_NAME=your-database-name
JWT_SECRET=your-secret-key-change-in-production JWT_SECRET=generate-secure-random-key-here
JWT_EXPIRATION=7d JWT_EXPIRATION=7d

View File

@ -1,18 +1,20 @@
version: '3.8' version: '3.8'
services: services:
postgres: # Закомментировано, так как используется удаленная база данных
image: postgres:15-alpine # Раскомментируйте для локальной разработки
container_name: prism_postgres # postgres:
environment: # image: postgres:15-alpine
POSTGRES_USER: postgres # container_name: prism_postgres
POSTGRES_PASSWORD: postgres # environment:
POSTGRES_DB: prism_messenger # POSTGRES_USER: postgres
ports: # POSTGRES_PASSWORD: postgres
- "5432:5432" # POSTGRES_DB: prism_messenger
volumes: # ports:
- postgres_data:/var/lib/postgresql/data # - "5432:5432"
restart: unless-stopped # volumes:
# - postgres_data:/var/lib/postgresql/data
# restart: unless-stopped
volumes: # volumes:
postgres_data: # postgres_data: