MCS-MCSManager/README_RU.md

18 KiB
Raw Permalink Blame History


Что это?

MCSManager Panel (сокращенно: MCSM Panel) — это современная, простая, многопользовательская веб-панель управления с поддержкой распределенной архитектуры и быстрым развертыванием для игровых серверов Minecraft и Steam.

MCSManager завоевал популярность в сообществах игр Minecraft и Steam. Он помогает вам централизованно управлять несколькими физическими серверами, позволяет создавать игровые серверы на любом хосте и предоставляет безопасную и надежную многопользовательскую систему разрешений, которая может легко помочь вам управлять несколькими серверами. Он уже предоставляет здоровую поддержку программного обеспечения для администраторов, операционного персонала и индивидуальных разработчиков игровых серверов Minecraft, Terraria и Steam.

Он также подходит для любой коммерческой деятельности, такой как поставщики IDC-услуг для продажи частных серверов и т.д. Несколько малых и средних предприятий уже используют эту панель в качестве программного обеспечения для управления и продаж, и она поддерживает языки множества стран.

1 terminal 3 4

Функции

  1. Используйте маркет приложений для легкого развертывания игровых серверов Minecraft или Steam одним кликом.
  2. Совместим с большинством игровых серверов Steam, таких как Palworld, Squad, Project Zomboid и Terraria и т.д.
  3. Веб-интерфейс поддерживает макет карточек перетаскивания для создания предпочитаемого макета интерфейса.
  4. Поддерживает все образы на Docker Hub, поддерживает многопользовательский режим, поддерживает коммерческие услуги продажи экземпляров.
  5. Поддерживает распределенную архитектуру, один веб-интерфейс может управлять несколькими машинами одновременно.
  6. Простой технологический стек, вам нужно только освоить TypeScript, чтобы завершить всю разработку MCSManager!
  7. И многое другое...

Среда выполнения

Панель управления может работать на платформах Windows и Linux, не требует установки базы данных, вам нужно только установить среду Node.js и несколько команд для распаковки.

Необходимо использовать Node.js 16.20.2 или выше, рекомендуется использовать последнюю LTS-версию.


Официальная документация

Английский: https://docs.mcsmanager.com/

Китайский: https://docs.mcsmanager.com/zh_cn/


Установка

Windows

Для систем Windows поставляется как готовая к запуску интегрированная версия - скачайте и запускайте сразу:

Архив: https://download.mcsmanager.com/mcsmanager_windows_release.zip

Дважды щелкните start.bat, чтобы запустить как веб-панель, так и процесс daemon.


Linux

Однострочная команда для быстрой установки

sudo su -c "wget -qO- https://script.mcsmanager.com/setup.sh | bash"

Использование после установки

systemctl start mcsm-{web,daemon} # Запуск панели
systemctl stop mcsm-{web,daemon}  # Остановка панели
  • Скрипт применяется только к Ubuntu/Centos/Debian/Archlinux
  • Код панели и среда выполнения автоматически устанавливаются в каталог /opt/mcsmanager/.

Ручная установка Linux

  • Если установка в один клик не работает, вы можете попробовать этот шаг для ручной установки.
# Перейти в каталог установки. Если он не существует, создайте его с помощью 'mkdir /opt/' сначала.
cd /opt/
# Скачать среду выполнения (Node.js). Если у вас уже установлен Node.js 16+, пожалуйста, пропустите этот шаг.
wget https://nodejs.org/dist/v20.11.0/node-v20.11.0-linux-x64.tar.xz
# Распаковать архив
tar -xvf node-v20.11.0-linux-x64.tar.xz
# Добавить программу в системные переменные окружения.
ln -s /opt/node-v20.11.0-linux-x64/bin/node /usr/bin/node
ln -s /opt/node-v20.11.0-linux-x64/bin/npm /usr/bin/npm

# Подготовить каталог установки.
mkdir /opt/mcsmanager/
cd /opt/mcsmanager/

# Скачать MCSManager.
wget https://github.com/MCSManager/MCSManager/releases/latest/download/mcsmanager_linux_release.tar.gz
tar -zxf mcsmanager_linux_release.tar.gz

# Установить зависимости.
chmod 775 install.sh
./install.sh

# Пожалуйста, откройте два терминала или screen.

# Сначала запустить программу node.
./start-daemon.sh

# Запустить веб-сервис (во втором терминале или screen).
./start-web.sh

# Посетите http://<публичный IP>:23333/ для просмотра панели.
# Обычно веб-приложение автоматически сканирует и подключается к локальному демону.

Этот метод установки не регистрирует панель в системных службах автоматически, поэтому вы должны использовать программное обеспечение screen для управления. Если вы хотите, чтобы системная служба взяла на себя MCSManager, пожалуйста, обратитесь к документации.


Mac OS


# Сначала установить Node.js, если у вас уже установлен, вы можете пропустить этот шаг.
# Node.js рекомендует установить последнюю LTS-версию.
brew install node
node -v
npm -v

# Использовать curl для скачивания файлов
curl -L https://github.com/MCSManager/MCSManager/releases/latest/download/mcsmanager_linux_release.tar.gz -o mcsmanager_linux_release.tar.gz

# Распаковать файлы (такая же команда, как оригинальная)
tar -zxf mcsmanager_linux_release.tar.gz

cd mcsmanager

# Установить зависимости.
chmod 775 install.sh
./install.sh

# Пожалуйста, откройте два терминала или screen.

# Сначала запустить программу node.
./start-daemon.sh

# Запустить веб-сервис (во втором терминале или screen).
./start-web.sh

# Посетите http://localhost:23333/ для просмотра панели.
# Обычно веб-приложение автоматически сканирует и подключается к локальному демону.

Установка через Docker

Установите панель с помощью docker-compose.yml, обратите внимание, что вам нужно изменить все <CHANGE_ME_TO_INSTALL_PATH> на ваш фактический путь установки.

services:
  web:
    image: githubyumao/mcsmanager-web:latest
    ports:
      - "23333:23333"
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - <CHANGE_ME_TO_INSTALL_PATH>/web/data:/opt/mcsmanager/web/data
      - <CHANGE_ME_TO_INSTALL_PATH>/web/logs:/opt/mcsmanager/web/logs

  daemon:
    image: githubyumao/mcsmanager-daemon:latest
    restart: unless-stopped
    ports:
      - "24444:24444"
    environment:
      - MCSM_DOCKER_WORKSPACE_PATH=<CHANGE_ME_TO_INSTALL_PATH>/daemon/data/InstanceData
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - <CHANGE_ME_TO_INSTALL_PATH>/daemon/data:/opt/mcsmanager/daemon/data
      - <CHANGE_ME_TO_INSTALL_PATH>/daemon/logs:/opt/mcsmanager/daemon/logs
      - /var/run/docker.sock:/var/run/docker.sock

Включить с помощью docker-compose.

mkdir -p <CHANGE_ME_TO_INSTALL_PATH>
cd <CHANGE_ME_TO_INSTALL_PATH>
vim docker-compose.yml # Напишите здесь вышеуказанное содержимое docker-compose.yml
docker compose pull && docker compose up -d

Примечание: После установки Docker веб-сторона может больше не подключаться к демону автоматически.

В этот момент, если вы войдете в панель, вы должны увидеть некоторые ошибки, потому что веб-сторона не смогла успешно подключиться к стороне демона, вам нужно создать новый узел, чтобы соединить их вместе.


Вклад в код

  • Должно быть прочитано перед вкладом в код: https://github.com/MCSManager/MCSManager/issues/599

  • Код должен поддерживать существующий формат, чрезмерное форматирование кода не допускается.

  • Весь код должен соответствовать стандартам интернационализации.


Разработка

Этот раздел для разработчиков. Если вы хотите заниматься вторичной разработкой MCSManager или отправлять вклады в код, пожалуйста, внимательно прочитайте эти материалы:

Требуется

Мы используем Visual Studio Code для разработки MCSManager. Вы должны установить эти плагины:

  • Поддержка отображения текста i18n (I18n Ally)
  • Форматирование кода (Prettier)
  • Vue - Official
  • ESLint

Файлы зависимостей

Вам нужно перейти к проектам PTY и Zip-Tools, чтобы скачать двоичные файлы, подходящие для вашей системы, сохранить их в каталоге daemon/lib (создать вручную, если не существует) для обеспечения нормальной работы симуляционного терминала и распаковки файлов.

Скачайте три файла зависимостей, выберите в соответствии с архитектурой вашей системы, и проверьте релизы, чтобы найти двоичные файлы, подходящие для вашей системы и архитектуры.

Например:

cd /opt/mcsmanager/daemon
mkdir lib && cd lib

# Библиотека зависимостей симуляционного терминала
wget https://github.com/MCSManager/PTY/releases/download/latest/pty_linux_x64

# Библиотека зависимостей для распаковки и сжатия файлов
wget https://github.com/MCSManager/Zip-Tools/releases/download/latest/file_zip_linux_x64

# Поддержка архивов 7z, опциональная загрузка
wget https://github.com/MCSManager/Zip-Tools/releases/download/latest/7z_linux_x64

Выполнение

git clone https://github.com/MCSManager/MCSManager.git

# MacOS
./install-dependents.sh
./npm-dev-macos.sh

# Windows
./install-dependents.bat
./npm-dev-windows.bat

Интернационализация кода

Поскольку проект адаптируется к нескольким языкам, все строки и комментарии в коде принимают только английский язык, поэтому, пожалуйста, не кодируйте неанглийский текст напрямую в коде.

Например, вы можете написать новую строку, которая должна адаптироваться к нескольким языкам.

import { $t } from "../i18n";

if (!checkName) {
  const errorMsg = "Check Name Failed!" // Не делайте так!
  const errorMsg = $t("TXT_CODE_MY_ERROR"); // Правильно!
}.
<script lang="ts" setup>
  import { t } from "@/lang/i18n";
  // ...
</script>

<template>
  <!-- ... -->
  <a-menu-item key="toNodesPage" @click="toNodesPage()">
    <FormOutlined />
    {{ t("TXT_CODE_NODE_INFO") }}
  </a-menu-item>
</template>

Пожалуйста, добавьте эту строку в языковой файл, например: languages/en_US.json

Среди них en_US.json обязательно добавить, это исходный текст для всех языков стран, другие языки стран могут быть автоматически переведены нами с помощью ИИ.

{
  //...
  "TXT_CODE_MY_ERROR": "Check Name Failed!",
  "TXT_CODE_NODE_INFO": "Jump to Node Page"
}

Если вы установили плагин I18n Ally, ваш $t("TXT_CODE_MY_ERROR") должен отображать английский текст.

Если текст перевода должен нести параметры, это может быть немного сложно, поскольку frontend и backend используют разные библиотеки i18n, поэтому формат может быть разным. Вам нужно просмотреть файлы, чтобы найти похожий код для понимания.

Все ключи текста перевода не могут дублироваться, поэтому, пожалуйста, попробуйте использовать более длинное имя!


Сборка версии производственной среды

./build.bat # Windows
./build.sh  # MacOS

После завершения сборки вы найдете код производственной среды в каталоге production-code.


Совместимость браузера

  • Поддерживает современные основные браузеры, такие как Chrome Firefox Safari Opera.
  • Отказался от поддержки браузера IE.

Отчеты об ошибках

Добро пожаловать для сообщения о любых найденных проблемах, мы исправим их быстро.

Если вы обнаружите серьезные уязвимости безопасности, которые неудобно публиковать публично, пожалуйста, отправьте электронное письмо по адресу: support@mcsmanager.com. После исправления проблем безопасности имя первооткрывателя будет прикреплено в коде.


Лицензия

Исходный код следует лицензии Apache-2.0.

Copyright ©2025 MCSManager.