nakama/update-server.sh

72 lines
2.0 KiB
Bash
Executable File
Raw 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.

#!/bin/bash
# Скрипт обновления Nakama на сервере
# Использование: ./update-server.sh
echo "🚀 Обновление Nakama..."
# 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 ..
# 6. Обновить MongoDB (отключить фильтры, удалить репосты)
echo "🗄️ Обновление базы данных..."
mongosh nakama --eval '
// Отключить все фильтры для пользователей
db.users.updateMany(
{},
{ $set: {
"settings.whitelist.noNSFW": false,
"settings.whitelist.noFurry": false,
"settings.whitelist.onlyAnime": false
}}
);
// Удалить поле reposts из постов
db.posts.updateMany({}, { $unset: { reposts: "" } });
// Удалить уведомления о репостах
db.notifications.deleteMany({ type: "repost" });
print("✅ База данных обновлена");
' --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"