2025-11-03 20:35:01 +00:00
|
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
|
|
|
|
# Скрипт обновления NakamaSpace на сервере
|
|
|
|
|
|
# Использование: ./update-server.sh
|
|
|
|
|
|
|
|
|
|
|
|
echo "🚀 Обновление NakamaSpace..."
|
|
|
|
|
|
|
|
|
|
|
|
# 1. Перейти в директорию проекта
|
|
|
|
|
|
cd /var/www/nakama || exit 1
|
|
|
|
|
|
|
|
|
|
|
|
# 2. Сделать бэкап (опционально)
|
|
|
|
|
|
echo "📦 Создание бэкапа..."
|
|
|
|
|
|
sudo tar -czf ~/nakama-backup-$(date +%Y%m%d_%H%M%S).tar.gz . 2>/dev/null
|
|
|
|
|
|
|
|
|
|
|
|
# 3. Получить новый код (если используете Git)
|
|
|
|
|
|
if [ -d .git ]; then
|
|
|
|
|
|
echo "🔄 Обновление кода из Git..."
|
|
|
|
|
|
git pull
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
|
|
# 4. Обновить backend зависимости
|
|
|
|
|
|
echo "📦 Обновление backend зависимостей..."
|
|
|
|
|
|
npm install --production
|
|
|
|
|
|
|
|
|
|
|
|
# 5. Обновить и пересобрать frontend
|
|
|
|
|
|
echo "🎨 Пересборка frontend..."
|
|
|
|
|
|
cd frontend
|
|
|
|
|
|
npm install
|
|
|
|
|
|
npm run build
|
|
|
|
|
|
cd ..
|
|
|
|
|
|
|
2025-11-03 20:54:59 +00:00
|
|
|
|
# 6. Обновить MongoDB (отключить фильтры, удалить репосты)
|
|
|
|
|
|
echo "🗄️ Обновление базы данных..."
|
2025-11-03 20:35:01 +00:00
|
|
|
|
mongosh nakama --eval '
|
2025-11-03 20:54:59 +00:00
|
|
|
|
// Отключить все фильтры для пользователей
|
2025-11-03 20:35:01 +00:00
|
|
|
|
db.users.updateMany(
|
|
|
|
|
|
{},
|
|
|
|
|
|
{ $set: {
|
|
|
|
|
|
"settings.whitelist.noNSFW": false,
|
|
|
|
|
|
"settings.whitelist.noFurry": false,
|
|
|
|
|
|
"settings.whitelist.onlyAnime": false
|
|
|
|
|
|
}}
|
2025-11-03 20:54:59 +00:00
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
// Удалить поле reposts из постов
|
|
|
|
|
|
db.posts.updateMany({}, { $unset: { reposts: "" } });
|
|
|
|
|
|
|
|
|
|
|
|
// Удалить уведомления о репостах
|
|
|
|
|
|
db.notifications.deleteMany({ type: "repost" });
|
|
|
|
|
|
|
|
|
|
|
|
print("✅ База данных обновлена");
|
2025-11-03 20:35:01 +00:00
|
|
|
|
' --quiet
|
|
|
|
|
|
|
|
|
|
|
|
# 7. Перезапустить backend
|
|
|
|
|
|
echo "🔄 Перезапуск backend..."
|
|
|
|
|
|
pm2 restart nakama-backend
|
|
|
|
|
|
|
|
|
|
|
|
# 8. Проверить статус
|
|
|
|
|
|
echo ""
|
|
|
|
|
|
echo "✅ Обновление завершено!"
|
|
|
|
|
|
echo ""
|
|
|
|
|
|
echo "Проверка статуса:"
|
|
|
|
|
|
pm2 status
|
|
|
|
|
|
|
|
|
|
|
|
echo ""
|
|
|
|
|
|
echo "Последние логи:"
|
|
|
|
|
|
pm2 logs nakama-backend --lines 20 --nostream
|
|
|
|
|
|
|
|
|
|
|
|
echo ""
|
|
|
|
|
|
echo "Проверьте приложение: https://nakama.glpshchn.ru"
|
|
|
|
|
|
|