Instalação

Requisitos

RequisitoMínimo recomendado
SOLinux (Ubuntu 20.04+ / Debian 11+)
RAM2 GB
CPU2 vCPU
Docker24.0+
Docker Compose2.20+

Portas necessárias no firewall

Abra estas portas no firewall do seu VPS antes de conectar o cliente:

PortaProtocoloServiço
44405TCPConnectServer
55601UDPConnectServer
55901TCPGameServer
8085TCPPainel web (opcional, somente admin)

Com UFW:

ufw allow 44405/tcp
ufw allow 55601/udp
ufw allow 55901/tcp

Passos de instalação

1. Clonar o repositório

git clone https://github.com/EmanuelCatania/Mu-Linux-0.97k.git
cd Mu-Linux-0.97k

2. Configurar variáveis de ambiente

cp .env.example .env
nano .env

Valores obrigatórios a alterar antes de iniciar:

# IP pública do seu VPS (o cliente se conecta a este IP)
PUBLIC_IP=123.456.789.0

# Senhas do MySQL (altere para valores seguros)
MYSQL_ROOT_PASSWORD=senha_segura_root
MYSQL_PASSWORD=senha_segura_usuario

# Segredo de sessão web (qualquer string aleatória longa)
SESSION_SECRET=mude-isso-para-uma-string-aleatoria-longa

# Credenciais do painel admin
ADMIN_USER=admin
ADMIN_PASS=mude_esta_senha

3. Iniciar o stack

docker compose up -d

Isso baixa as imagens do Docker Hub (apenas na primeira vez) e inicia todos os serviços: MySQL, ConnectServer, GameServer, JoinServer, DataServer e o painel web.

Para acompanhar os logs em tempo real:

docker compose logs -f

Para verificar que todos os containers estão rodando:

docker compose ps

4. Acessar o painel web

Quando todos os containers estiverem healthy, o painel web está disponível através do domínio configurado no seu proxy reverso:

https://seu-dominio.com/

Ou diretamente pelo IP se não tiver proxy reverso:

http://SEU_IP:8085

Use as credenciais configuradas em .env (ADMIN_USER / ADMIN_PASS). O painel admin está em /admin/.

Com o editor de servidor (opcional)

A API editor adiciona backups por arquivo e snapshots completos do diretório MuServer/Data.

# Habilitar no .env
EDITOR_ENABLED=1
EDITOR_API_URL=http://mu-editor:8090

# Iniciar com o compose estendido
docker compose -f docker-compose.yml -f docker-compose.editor.yml up -d

Atualizar imagens

docker compose pull
docker compose up -d

Recriar o banco de dados

Se você alterar as credenciais do MySQL após o primeiro início, precisa recriar o volume:

docker compose down -v
docker compose up -d

⚠️ Isso apaga todos os dados do servidor. Faça um backup primeiro se tiver dados importantes.

Resolução de problemas

O servidor não aparece no cliente: verifique se PUBLIC_IP no .env é o IP público correto e se as portas do firewall estão abertas.

O painel web não carrega: aguarde alguns segundos para o MySQL passar o health check. Verifique docker compose ps para o status de cada serviço.

Logs de erro no GameServer: execute docker compose logs mu-server para ver os erros específicos.