uploader-bot/docs/DEPLOY_INSTRUCTIONS_RU.md

167 lines
5.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 🚀 Инструкции по развертыванию MY Network Bootstrap Node
## 📋 Что нужно сделать на сервере 2.58.65.188
### ✅ Шаг 1: Подключение к серверу
```bash
ssh service@2.58.65.188
# Пароль: DMUEjmnh6mDs/qlzhpjDzQ
```
### ✅ Шаг 2: Запуск автоматического развертывания
```bash
# Переход в root
sudo su -
# Запуск скрипта развертывания
chmod +x /tmp/auto_deploy.sh
bash /tmp/auto_deploy.sh
```
**⏳ Время выполнения: ~15-20 минут**
### ✅ Шаг 3: Проверка результата
После завершения скрипта проверьте:
```bash
# Статус сервисов
systemctl status my-network-bootstrap nginx docker
# Проверка API
curl https://my-public-node-3.projscale.dev/api/my/health
# Проверка портов (должен быть только 443)
netstat -tlnp | grep LISTEN
# Проверка firewall
ufw status numbered
```
## 🎯 Что будет развернуто:
### 🔧 **Базовая инфраструктура:**
- ✅ Ubuntu система обновлена
- ✅ Docker + Docker Compose установлены
- ✅ Python 3 + venv + зависимости
- ✅ MariaDB 11.2 (внутренний порт 3306)
- ✅ Redis 7 (внутренний порт 6379)
### 🌐 **MY Network Bootstrap Node:**
- ✅ Основное приложение на порту 15100 (внутренний)
- ✅ Bootstrap конфигурация для всей сети
- ✅ REST API для управления сетью
-Веб-мониторинг с ASCII интерфейсом
### 🔒 **Безопасность:**
- ✅ Nginx proxy только на порт 443 (HTTPS)
- ✅ SSL сертификат Let's Encrypt для my-public-node-3.projscale.dev
- ✅ UFW firewall - ТОЛЬКО SSH + 443 порт
- ✅ Fail2ban защита от атак
-Все внутренние порты заблокированы
### 🛡️ **Cloudflare совместимость:**
- ✅ Настроены IP ranges для Cloudflare
- ✅ Real IP header обработка
- ✅ CORS headers для публичного API
- ✅ Rate limiting для разных endpoints
## 📡 **Доступные API endpoints:**
### 🌍 **Публичные (доступны всем):**
- **Health Check:** `https://my-public-node-3.projscale.dev/api/my/health`
- **Node Info:** `https://my-public-node-3.projscale.dev/api/my/node/info`
- **Bootstrap Config:** `https://my-public-node-3.projscale.dev/api/my/bootstrap/config`
### 🔒 **Ограниченные (только localhost):**
- **Monitor Dashboard:** `https://my-public-node-3.projscale.dev/api/my/monitor/`
## 🎮 **Для других узлов сети:**
Другие узлы смогут подключаться к этому bootstrap узлу используя:
```json
{
"bootstrap_nodes": [
{
"id": "bootstrap-primary",
"host": "my-public-node-3.projscale.dev",
"port": 443,
"ssl": true,
"public": true
}
]
}
```
## 📊 **Мониторинг:**
### 🔍 **Автоматический мониторинг:**
- ✅ Проверка каждые 2 минуты
- ✅ Логирование в `/opt/logs/bootstrap-monitor.log`
- ✅ Уведомления о критических проблемах
### 📈 **Ручная проверка:**
```bash
# Логи сервиса
journalctl -u my-network-bootstrap -f
# Системный мониторинг
tail -f /opt/logs/bootstrap-monitor.log
# SSL статус
certbot certificates
# Статистика nginx
tail -f /var/log/nginx/access.log
```
## 🆘 **Troubleshooting:**
### ❌ **Если API недоступен:**
```bash
systemctl restart my-network-bootstrap nginx
curl -v https://my-public-node-3.projscale.dev/api/my/health
```
### ❌ **Если SSL не работает:**
```bash
certbot certificates
certbot renew --dry-run
systemctl reload nginx
```
### ❌ **Если firewall блокирует:**
```bash
ufw status numbered
# Проверить что порт 443 разрешен
```
## 📋 **Финальный чек-лист:**
После развертывания должно быть:
- [ ]`curl https://my-public-node-3.projscale.dev/api/my/health` возвращает 200
- [ ]`curl https://my-public-node-3.projscale.dev/api/my/node/info` показывает информацию об узле
- [ ]`curl https://my-public-node-3.projscale.dev/api/my/bootstrap/config` возвращает конфигурацию
- [ ]`systemctl status my-network-bootstrap nginx docker` все сервисы active
- [ ]`ufw status` показывает только SSH и 443 порт
- [ ]`netstat -tlnp | grep :443` nginx слушает порт 443
- [ ] ✅ SSL сертификат действителен (проверить в браузере)
## 🎉 **Результат:**
После успешного развертывания у вас будет:
**🚀 Полностью функциональный MY Network Bootstrap Node**
- Доступен по HTTPS на my-public-node-3.projscale.dev
- Готов принимать подключения других узлов сети
- Защищен firewall + SSL + fail2ban
- Автоматический мониторинг и обслуживание
- Совместим с Cloudflare proxy
**🌐 Готов стать основным узлом распределенной сети MY Network!**
---
*Время развертывания: ~15-20 минут*
*Требования: Ubuntu 20.04+, root доступ, домен настроен*