# 🚀 Инструкция по обновлению сервера ## Вариант 1: PM2 (рекомендуется) ### 1. Подключитесь к серверу ```bash ssh user@your-server cd /var/www/nakama # или путь к вашему проекту ``` ### 2. Обновите код ```bash # Если используете Git git pull origin main # Или загрузите файлы вручную через SFTP/SCP ``` ### 3. Установите зависимости (если нужно) ```bash # Backend зависимости npm install --production # Frontend зависимости и сборка cd frontend npm install npm run build cd .. ``` ### 4. Перезапустите backend ```bash pm2 restart nakama-backend ``` ### 5. Проверьте статус ```bash pm2 status pm2 logs nakama-backend --lines 50 ``` ### Или используйте готовый скрипт: ```bash chmod +x update-server.sh ./update-server.sh ``` --- ## Вариант 2: Docker ### 1. Подключитесь к серверу ```bash ssh user@your-server cd /path/to/nakama ``` ### 2. Обновите код ```bash # Если используете Git git pull origin main # Или загрузите файлы вручную ``` ### 3. Пересоберите и перезапустите контейнеры ```bash # Пересобрать только backend (если изменился только backend) docker-compose build backend docker-compose up -d backend # Или пересобрать всё docker-compose build docker-compose up -d ``` ### 4. Проверьте статус ```bash docker-compose ps docker-compose logs -f backend ``` --- ## Быстрое обновление (только backend) Если изменился только backend код: ### PM2: ```bash cd /var/www/nakama git pull pm2 restart nakama-backend ``` ### Docker: ```bash cd /path/to/nakama git pull docker-compose build backend docker-compose up -d backend ``` --- ## Проверка после обновления 1. **Проверьте логи:** ```bash # PM2 pm2 logs nakama-backend --lines 50 # Docker docker-compose logs backend --tail 50 ``` 2. **Проверьте здоровье сервера:** ```bash curl http://localhost:3000/health ``` 3. **Проверьте работу приложения:** - Откройте приложение в браузере - Попробуйте авторизоваться - Проверьте, что ники и аватарки отображаются --- ## Что изменилось в этом обновлении ✅ **Отключено автообновление аватарок** - больше не будет автоматического обновления всех аватарок каждый день ✅ **Улучшено обновление данных при авторизации** - при каждом перезаходе пользователя система проверяет и подтягивает отсутствующие данные (username, firstName, lastName, photoUrl) из Telegram ✅ **Добавлены fallback значения** - если данные отсутствуют, отображаются значения по умолчанию вместо пустых полей --- ## Откат изменений (если что-то пошло не так) ### PM2: ```bash cd /var/www/nakama git checkout HEAD~1 # или конкретный коммит pm2 restart nakama-backend ``` ### Docker: ```bash cd /path/to/nakama git checkout HEAD~1 docker-compose build backend docker-compose up -d backend ``` --- ## Полезные команды ### PM2: ```bash pm2 list # Список процессов pm2 restart nakama-backend # Перезапуск pm2 stop nakama-backend # Остановка pm2 logs nakama-backend # Логи pm2 monit # Мониторинг ``` ### Docker: ```bash docker-compose ps # Статус контейнеров docker-compose logs -f # Логи всех сервисов docker-compose restart backend # Перезапуск backend docker-compose down # Остановка всех контейнеров docker-compose up -d # Запуск всех контейнеров ```