13 KiB
O que é isso?
MCSManager Panel (abreviado: MCSM Panel) é um painel de administração web moderno, simples, multi-usuário, compatível com arquitetura distribuída e de implantação rápida para servidores de jogos Minecraft e Steam.
MCSManager ganhou popularidade nas comunidades de jogos Minecraft e Steam. Ajuda você a gerenciar centralmente múltiplos servidores físicos, permitindo criar servidores de jogos em qualquer host, e fornece um sistema de permissões multi-usuário seguro e confiável que pode facilmente ajudá-lo a gerenciar múltiplos servidores. Tem fornecido suporte de software saudável para administradores, pessoal de operações e desenvolvedores individuais de servidores de jogos Minecraft, Terraria e Steam.
Também é adequado para qualquer atividade comercial, como provedores de serviços IDC para venda de servidores privados, etc. Várias pequenas e médias empresas já estão usando este painel como software de gerenciamento e vendas, e suporta idiomas de múltiplos países.
Recursos
- Use o mercado de aplicativos para implantar facilmente servidores de jogos
MinecraftouSteamcom um clique. - Compatível com a maioria dos servidores de jogos
Steam, comoPalworld,Squad,Project ZomboideTerraria, etc. - Interface web suporta layout de cartões de arrastar e soltar para criar seu layout de interface preferido.
- Suporta todas as imagens no
Docker Hub, suporta multi-usuário, suporta serviços de venda de instâncias comerciais. - Suporta arquitetura distribuída, uma interface web pode gerenciar múltiplas máquinas simultaneamente.
- Stack tecnológico simples, você só precisa dominar TypeScript para completar todo o desenvolvimento do MCSManager!
- Mais...
Ambiente de Execução
O painel de controle pode executar em plataformas Windows e Linux, não requer instalação de banco de dados, você só precisa instalar o ambiente Node.js e vários comandos de descompactação.
Deve usar Node.js 16.20.2 ou superior, recomendamos usar a versão LTS mais recente.
Documentação Oficial
Inglês: https://docs.mcsmanager.com/
Chinês: https://docs.mcsmanager.com/zh_cn/
Instalação
Windows
Para sistemas Windows, vem como uma versão integrada pronta para executar - baixe e execute imediatamente:
Arquivo: https://download.mcsmanager.com/mcsmanager_windows_release.zip
Clique duas vezes em start.bat para iniciar tanto o painel web quanto o processo daemon.
Linux
Comando de uma linha para instalação rápida
sudo su -c "wget -qO- https://script.mcsmanager.com/setup.sh | bash"
Uso após a instalação
systemctl start mcsm-{web,daemon} # Iniciar painel
systemctl stop mcsm-{web,daemon} # Parar painel
- Script se aplica apenas ao Ubuntu/Centos/Debian/Archlinux
- Código do painel e ambiente de execução são instalados automaticamente no diretório
/opt/mcsmanager/.
Instalação manual do Linux
- Se a instalação de um clique não funcionar, você pode tentar este passo para instalação manual.
# Mudar para o diretório de instalação. Se não existir, por favor crie com 'mkdir /opt/' primeiro.
cd /opt/
# Baixar ambiente de execução (Node.js). Se você já tem Node.js 16+ instalado, por favor ignore este passo.
wget https://nodejs.org/dist/v20.11.0/node-v20.11.0-linux-x64.tar.xz
# Extrair arquivo
tar -xvf node-v20.11.0-linux-x64.tar.xz
# Adicionar programa às variáveis de ambiente do sistema.
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
# Preparar diretório de instalação.
mkdir /opt/mcsmanager/
cd /opt/mcsmanager/
# Baixar MCSManager.
wget https://github.com/MCSManager/MCSManager/releases/latest/download/mcsmanager_linux_release.tar.gz
tar -zxf mcsmanager_linux_release.tar.gz
# Instalar dependências.
chmod 775 install.sh
./install.sh
# Por favor abra dois terminais ou screen.
# Iniciar programa node primeiro.
./start-daemon.sh
# Iniciar serviço web (no segundo terminal ou screen).
./start-web.sh
# Visite http://<IP público>:23333/ para ver o painel.
# Geralmente, a aplicação web irá automaticamente escanear e conectar ao daemon local.
Este método de instalação não registra automaticamente o painel aos serviços do sistema, então você deve usar software screen para gerenciá-lo. Se você quiser que o serviço do sistema assuma o MCSManager, por favor consulte a documentação.
Mac OS
# Primeiro instalar Node.js, se você já tem instalado, pode pular este passo.
# Node.js recomenda instalar a versão LTS mais recente.
brew install node
node -v
npm -v
# Usar curl para baixar arquivos
curl -L https://github.com/MCSManager/MCSManager/releases/latest/download/mcsmanager_linux_release.tar.gz -o mcsmanager_linux_release.tar.gz
# Extrair arquivos (mesmo comando que o original)
tar -zxf mcsmanager_linux_release.tar.gz
cd mcsmanager
# Instalar dependências.
chmod 775 install.sh
./install.sh
# Por favor abra dois terminais ou screen.
# Iniciar programa node primeiro.
./start-daemon.sh
# Iniciar serviço web (no segundo terminal ou screen).
./start-web.sh
# Visite http://localhost:23333/ para ver o painel.
# Geralmente, a aplicação web irá automaticamente escanear e conectar ao daemon local.
Instalação via Docker
Instale o painel usando docker-compose.yml, note que você precisa alterar todos os <CHANGE_ME_TO_INSTALL_PATH> para seu caminho de instalação real.
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
Habilitar usando docker-compose.
mkdir -p <CHANGE_ME_TO_INSTALL_PATH>
cd <CHANGE_ME_TO_INSTALL_PATH>
vim docker-compose.yml # Escreva aqui o conteúdo do docker-compose.yml acima
docker compose pull && docker compose up -d
Nota: Após a instalação do Docker, o lado Web pode não conseguir mais conectar automaticamente ao Daemon.
Neste momento, se você entrar no painel, deve ver alguns erros porque o lado Web não conseguiu conectar com sucesso ao lado daemon, você precisa criar um novo nó para conectá-los.
Contribuindo com Código
-
Deve ser lido antes de contribuir com código: https://github.com/MCSManager/MCSManager/issues/599
-
Código precisa manter o formato existente, formatação excessiva de código não é permitida.
-
Todo código deve cumprir com os padrões de internacionalização.
Desenvolvimento
Esta seção é para desenvolvedores. Se você quer fazer desenvolvimento secundário no MCSManager ou enviar contribuições de código, por favor leia cuidadosamente estes conteúdos:
Requerido
Usamos Visual Studio Code para desenvolver MCSManager. Você deve instalar estes plugins:
- Suporte de exibição de texto i18n (I18n Ally)
- Formatação de código (Prettier)
- Vue - Official
- ESLint
Arquivos de Dependências
Você precisa ir aos projetos PTY e Zip-Tools para baixar arquivos binários adequados para seu sistema, armazená-los no diretório daemon/lib (criar manualmente se não existir) para garantir o funcionamento normal de terminal de simulação e descompactação de arquivos.
Baixe três arquivos de dependência, selecione conforme a arquitetura do seu sistema, e verifique os Releases para encontrar binários adequados para seu sistema e arquitetura.
Por exemplo:
cd /opt/mcsmanager/daemon
mkdir lib && cd lib
# Biblioteca de dependências do terminal emulado
wget https://github.com/MCSManager/PTY/releases/download/latest/pty_linux_x64
# Biblioteca de dependências para extrair e comprimir arquivos
wget https://github.com/MCSManager/Zip-Tools/releases/download/latest/file_zip_linux_x64
# Suporte para arquivos 7z, download opcional
wget https://github.com/MCSManager/Zip-Tools/releases/download/latest/7z_linux_x64
Execução
git clone https://github.com/MCSManager/MCSManager.git
# MacOS
./install-dependents.sh
./npm-dev-macos.sh
# Windows
./install-dependents.bat
./npm-dev-windows.bat
Internacionalização de Código
Como o projeto se adapta a múltiplos idiomas, todas as strings e comentários no código apenas aceitam inglês, então por favor não codifique texto não-inglês diretamente no código.
Por exemplo, você pode escrever uma nova string que precisa se adaptar a múltiplos idiomas.
import { $t } from "../i18n";
if (!checkName) {
const errorMsg = "Check Name Failed!" // Não faça isso!
const errorMsg = $t("TXT_CODE_MY_ERROR"); // Correto!
}.
<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>
Por favor adicione esta linha ao arquivo de idioma, por exemplo: languages/en_US.json
Entre eles, en_US.json é obrigatório adicionar, é o texto fonte para todos os idiomas de países, outros idiomas de países podem ser traduzidos automaticamente por nós usando IA.
{
//...
"TXT_CODE_MY_ERROR": "Check Name Failed!",
"TXT_CODE_NODE_INFO": "Jump to Node Page"
}
Se você instalou o plugin I18n Ally, seu $t("TXT_CODE_MY_ERROR") deve exibir o texto em inglês.
Se o texto de tradução precisa carregar parâmetros, isso pode ser um pouco complexo, porque frontend e backend usam bibliotecas i18n diferentes, então o formato pode ser diferente. Você precisa olhar através dos arquivos para encontrar código similar para entender.
Todas as chaves de texto de tradução não podem ser duplicadas, então por favor tente usar um nome mais longo!
Construir Versão de Ambiente de Produção
./build.bat # Windows
./build.sh # MacOS
Após a construção estar completa, você encontrará o código do ambiente de produção no diretório production-code.
Compatibilidade do Navegador
- Suporta navegadores modernos principais como
ChromeFirefoxSafariOpera. - Abandonou suporte para navegador
IE.
Relatórios de Bugs
Bem-vindo para reportar qualquer problema encontrado, iremos corrigi-los rapidamente.
Se você descobrir vulnerabilidades de segurança graves que são inconvenientes de publicar publicamente, por favor envie um email para: support@mcsmanager.com. Após problemas de segurança serem corrigidos, o nome do descobridor será anexado no código.
Licença
O código fonte segue a licença Apache-2.0.
Copyright ©2025 MCSManager.