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