Um painel web simples baseado em Django para gerenciar servidores Minecraft diretamente na sua VPS Linux.
sudo apt-get update
sudo apt-get install openjdk-8-jre-headlesspip install mcmanager# Inicializa o banco de dados e cria os diretórios na pasta ~/.mcmanager
mcmanager init
# Cria um usuário administrador
mcmanager createsuperuser
# Inicia o painel
mcmanager runPronto! Acesse http://sua-vps-ip:8000/admin/ para logar com o superusuário criado e começar a gerenciar seus servidores.
Por padrão, todos os dados do painel ficam armazenados de forma isolada na home do usuário:
~/.mcmanager/db.sqlite3(Banco de dados do painel)~/.mcmanager/jar/(Coloque seus arquivos.jarde servidor aqui, ex:spigot.jar,vanilla.jar)~/.mcmanager/servers/(Diretório onde cada servidor criado será executado)~/.mcmanager/configs/(Onde fica oserver.propertiespadrão)~/.mcmanager/staticfiles/(Arquivos estáticos compilados do painel)
Se você der start num servidor e ele aparecer "ON" por um instante e voltar pra "OFF" (ou nunca chegar a ficar "ON"), o processo do Java/Minecraft morreu logo depois de iniciar. Causas comuns:
- Versão do Java incompatível com o
.jarconfigurado (ex: jar exige Java 17+, masMCMANAGER_JAVA_BINaponta pra um Java 8). eula.txtnão aceito (o mcmanager já cria esse arquivo automaticamente ao provisionar o servidor, mas confira se não foi apagado).- Arquivo
.jarcorrompido ou incompatível com o sistema. - Memória (
memory_limit) configurada baixa/alta demais pro que a VPS suporta. - Se "Reinício automático" estiver ativado pro servidor: o supervisor tenta religar sozinho até 3 vezes antes de desistir e desativar o reinício automático — o padrão "ON por 1s, OFF" repetido algumas vezes é esse ciclo de tentativas.
Onde olhar:
- Log do próprio Minecraft:
~/.mcmanager/servers/server_<id>/logs/latest.log, visível ao vivo na página do console do servidor (/console/<id>/). Só existe se o Minecraft chegou a inicializar o próprio logger antes de morrer — em falhas muito cedo (ex: Java incompatível), esse arquivo pode não ter nada útil ou nem existir. - Log do supervisor (reinício automático): tentativas de religar e a desativação após 3 falhas são registradas via
loggingdo Python, mas só aparecem no terminal ondemcmanager runestá rodando — não são salvos em nenhum arquivo, e se perdem ao fechar o terminal. - Limitação atual conhecida: o mcmanager hoje descarta a saída (stdout/stderr) do processo Java diretamente — se o servidor morrer antes de escrever no próprio
logs/latest.log, não sobra nenhum diagnóstico salvo em lugar nenhum, nem no painel nem em arquivo. Rodarmcmanager doctorajuda a descartar causas comuns (Java ausente/errado, diretórios sem permissão, banco de dados desatualizado) antes de investigar mais a fundo.
Você pode ajustar o comportamento do painel definindo variáveis de ambiente antes de executar o comando mcmanager:
MCMANAGER_DATA_DIR: Altera a pasta padrão onde os servidores e banco de dados são salvos (padrão:~/.mcmanager).MCMANAGER_JAVA_BIN: Especifica o caminho binário do Java (padrão:/usr/lib/jvm/java-8-openjdk-amd64/bin/java). Usewhereis javapara encontrar o caminho correto na sua VPS.MCMANAGER_ALLOWED_HOSTS: Lista de hosts permitidos separados por vírgula (padrão:*).MCMANAGER_DEBUG: Define se o painel roda em modo debug (TrueouFalse).
Exemplo definindo um caminho diferente de Java e iniciando:
export MCMANAGER_JAVA_BIN="/usr/bin/java"
mcmanager runSe você deseja contribuir ou modificar o código localmente:
- Clone o repositório.
- Crie e ative um ambiente virtual.
- Instale as dependências e o pacote local no modo editável:
pip install -r requirements.txt pip install -e .
- Ao rodar
python manage.py runserver, o painel rodará em modo debug local e usará a própria pasta do projeto para salvar os arquivos de desenvolvimento.
- Formatar código:
python manage.py format_code - Gerar nova Secret Key de desenvolvimento:
python manage.py generate_secret_key

