📦 Add VPS deployment guide for server 128.140.8.206

 Features:
- Complete step-by-step deployment instructions
- Docker & Docker Compose installation
- Production environment configuration
- Security and monitoring guidelines
- Troubleshooting section
- One-command deployment script

🎯 Ready for VPS deployment

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Aimpress Team 2025-09-28 22:00:10 +01:00
parent bda23a773f
commit 07e854e68c

236
VPS-DEPLOY.md Normal file
View file

@ -0,0 +1,236 @@
# 🚀 VPS Deployment - Aimpress AutomationHub
## 🌐 **Развертывание на VPS сервере 128.140.8.206**
### Шаг 1: Подключение к серверу
```bash
# Подключиться к VPS
ssh root@128.140.8.206
# или
ssh your-username@128.140.8.206
```
### Шаг 2: Установка Docker (если не установлен)
```bash
# Обновить пакеты
apt update && apt upgrade -y
# Установить Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
# Установить Docker Compose
curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
# Проверить установку
docker --version
docker-compose --version
```
### Шаг 3: Клонирование проекта
```bash
# Установить Git (если не установлен)
apt install git -y
# Клонировать репозиторий
git clone https://github.com/SamoilenkoVadym/SaaS.git
cd SaaS
```
### Шаг 4: Конфигурация для production
```bash
# Создать production docker-compose
cp docker-compose.yml docker-compose.prod.yml
# Изменить порты для внешнего доступа
sed -i 's/- "3000:3000"/- "80:3000"/' docker-compose.prod.yml
sed -i 's/- "3001:3001"/- "3001:3001"/' docker-compose.prod.yml
```
### Шаг 5: Настройка переменных окружения
```bash
# Backend environment
cat > backend/.env << EOF
PORT=3001
DB_HOST=postgres
DB_PORT=5432
DB_NAME=saas_automation
DB_USER=postgres
DB_PASSWORD=secure_production_password_123
JWT_SECRET=your_super_secret_jwt_key_production_123
NODE_ENV=production
EOF
# Frontend environment
cat > frontend/.env.local << EOF
NEXT_PUBLIC_API_URL=http://128.140.8.206:3001
EOF
```
### Шаг 6: Запуск приложения
```bash
# Запустить все сервисы
docker-compose -f docker-compose.prod.yml up -d
# Проверить статус
docker-compose -f docker-compose.prod.yml ps
# Посмотреть логи
docker-compose -f docker-compose.prod.yml logs -f
```
### Шаг 7: Настройка firewall (опционально)
```bash
# Открыть нужные порты
ufw allow 80
ufw allow 3001
ufw allow 22
ufw --force enable
```
## 🌐 **Доступ к приложению**
После успешного развертывания приложение будет доступно:
- **🌐 Главная страница:** http://128.140.8.206
- **👨‍💼 Admin Panel:** http://128.140.8.206/admin
- **🛍️ Marketplace:** http://128.140.8.206/marketplace
- **🔗 Integrations:** http://128.140.8.206/integrations
- **🔧 Backend API:** http://128.140.8.206:3001
### 🔐 **Тестовые аккаунты**
**Admin:**
- Email: `info@ai-impress.com`
- Password: `admin123`
## 📊 **Мониторинг и обслуживание**
### Проверка статуса
```bash
# Проверить работающие контейнеры
docker ps
# Проверить логи
docker-compose -f docker-compose.prod.yml logs frontend
docker-compose -f docker-compose.prod.yml logs backend
docker-compose -f docker-compose.prod.yml logs postgres
```
### Обновление приложения
```bash
# Остановить контейнеры
docker-compose -f docker-compose.prod.yml down
# Обновить код
git pull origin main
# Пересобрать и запустить
docker-compose -f docker-compose.prod.yml up -d --build
```
### Резервное копирование базы данных
```bash
# Создать backup
docker-compose -f docker-compose.prod.yml exec postgres pg_dump -U postgres saas_automation > backup_$(date +%Y%m%d).sql
# Восстановить из backup
docker-compose -f docker-compose.prod.yml exec -T postgres psql -U postgres saas_automation < backup_20241228.sql
```
## 🔒 **Безопасность для production**
### SSL сертификат (рекомендуется)
```bash
# Установить Certbot
apt install certbot -y
# Если у вас есть домен, получить SSL сертификат
# certbot --nginx -d yourdomain.com
# Настроить автообновление
crontab -e
# Добавить: 0 12 * * * /usr/bin/certbot renew --quiet
```
### Изменить пароли по умолчанию
```bash
# Изменить пароль базы данных
# Обновить docker-compose.prod.yml и backend/.env
# Изменить JWT_SECRET на уникальный ключ
```
## 🚨 **Troubleshooting**
### Проблема: Контейнеры не запускаются
```bash
# Проверить логи
docker-compose -f docker-compose.prod.yml logs
# Очистить старые образы
docker system prune -a
# Пересобрать
docker-compose -f docker-compose.prod.yml up -d --build
```
### Проблема: База данных не подключается
```bash
# Проверить статус PostgreSQL
docker-compose -f docker-compose.prod.yml exec postgres pg_isready
# Подключиться к базе данных
docker-compose -f docker-compose.prod.yml exec postgres psql -U postgres saas_automation
```
### Проблема: Frontend не загружается
```bash
# Проверить переменные окружения
cat frontend/.env.local
# Убедиться что API_URL указывает на правильный адрес
# Должен быть: NEXT_PUBLIC_API_URL=http://128.140.8.206:3001
```
## 📞 **Поддержка**
При возникновении проблем:
1. Проверить логи: `docker-compose logs`
2. Проверить статус: `docker-compose ps`
3. Перезапустить: `docker-compose restart`
4. Связаться с командой: info@ai-impress.com
---
## 🎯 **Быстрая команда для полного развертывания**
```bash
# Скопировать и выполнить весь блок
ssh root@128.140.8.206 '
apt update && apt upgrade -y &&
curl -fsSL https://get.docker.com -o get-docker.sh && sh get-docker.sh &&
curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose &&
chmod +x /usr/local/bin/docker-compose &&
apt install git -y &&
git clone https://github.com/SamoilenkoVadym/SaaS.git &&
cd SaaS &&
cp docker-compose.yml docker-compose.prod.yml &&
sed -i "s/- \"3000:3000\"/- \"80:3000\"/" docker-compose.prod.yml &&
cat > backend/.env << EOF
PORT=3001
DB_HOST=postgres
DB_PORT=5432
DB_NAME=saas_automation
DB_USER=postgres
DB_PASSWORD=secure_production_password_123
JWT_SECRET=your_super_secret_jwt_key_production_123
NODE_ENV=production
EOF
cat > frontend/.env.local << EOF
NEXT_PUBLIC_API_URL=http://128.140.8.206:3001
EOF
docker-compose -f docker-compose.prod.yml up -d
'
```
После выполнения команды приложение будет доступно по адресу: **http://128.140.8.206**