0.2.5. Релиз файлового менеджера
Ссылка на Wiki
Запуск проекта
Для запуска проекта требуется:
- Доступ к интернету для скачивания Java и серверных файлов.
- Docker (версии 18.06.0 или выше) и Docker Compose (версии 1.27.0 или выше).
Запуск
1. Склонируйте репозиторий (последняя версия, не стабильная):
git clone https://github.com/crazykivi/minecraft-backend.git
cd minecraft-backend
1. Или скачайте и распакуйте один из архивов, вложенных к посту
2. Запустите проект с помощью Docker Compose:
docker-compose up -d
Панель управления будет доступна по адресу: http://localhost:3000/ или тот адрес, который вы указали в переменной REACT_APP_API_URL.
Основные изменения
1. Добавление файлового менеджера во фронтенде по маршруту /file-manager
2. Добавление возможности работы без авторизации
- В файле config.json есть переменная disableFrontendAuth. По дефолту, переменная установлена на false (то есть, работа с авторизацией), но если изменить её на true, то на бекенде и фронтенде отключается проверки авторизации.
- В config.json добавлена переменная:
"disableFrontendAuth": false
- По умолчанию: false — авторизация включена.
- Если установить в true, проверки авторизации отключаются как на бекенде, так и на фронтенде.
3. Поддержка работы с удалённых устройств
- Теперь фронтенд может взаимодействовать с бекендом не только через localhost.
Для этого добавлена переменная окружения: "REACT_APP_API_URL="
- Если переменная не указана, используется значение по умолчанию: http://localhost:3001.
Это позволяет запускать фронтенд на одном устройстве и подключаться к API на другом (например, по локальной сети).
Пример корректной переменной: "REACT_APP_API_URL=http://192.168.20.184:3001"
4. Добавлен Redis
Основные задачи Redis:
- Кэширование логов сервера и команд
- Логи терминала сохраняются в Redis.
-Можно отслеживать историю команд и вывода между запросами.
- Мониторинг ресурсов
- Сохраняются данные о загрузке CPU, памяти, статусе сервера.
- История хранится 24 часа.
- Доступна через /history для графиков и диагностики.
- Рассылка событий в реальном времени
- Подписчики WebSocket-соединения получают обновления при добавлении новых записей в Redis.
Это позволяет динамически обновлять интерфейс без перезагрузок.
- Файловый менеджер
- Redis используется для кэширования структуры файлов и папок, а также их размеров — это позволяет значительно ускорить открытие директорий и
избежать повторных операций чтения с диска.
избежать повторных операций чтения с диска.
- Удобство и производительность
- Данные хранятся в оперативной памяти для быстрого доступа к данным приложения.
Краткая инструкция по настройке .env файла
# Путь к базе данных SQLite
DATABASE_PATH=/app/data/users.db
# Секретный ключ для JWT
JWT_SECRET=obyazatelno_input_your_jwt_secret_key
JWT_SECRET=obyazatelno_input_your_jwt_secret_key
# Настройки Redis (если используется внешний)
# REDIS_HOST=redis
# REDIS_PORT=6379
# Профили запуска:
COMPOSE_PROFILES=all # Запуск всего (фронтенд + бекенд + redis)
# Альтернативы:
# COMPOSE_PROFILES=local-redis # Без фронтенда, с Redis
# COMPOSE_PROFILES=frontend # Без Redis, с фронтендом
# Убрать переменную COMPOSE_PROFILES — запустится только API
# URL бекенда для фронтенда
# Если не задано, используется http://localhost:3001
REACT_APP_API_URL=http://localhost:3001
REACT_APP_API_URL=http://localhost:3001
Файл .env уже создан в корне проекта, для локальной работы можно ничего не менять.
Ссылка на GitHub.
gz
MCStack-0.2.5.tar.gz979.83 Kb
zip
MCStack-0.2.5.zip995.56 Kb