Atualizar o Jexactyl
Este guia é para atualizar uma instância que já está na v4 para uma nova release. Se você está na v3.8.6 ou no Pterodactyl v1.x, consulte os guias específicos em Migrar da v3.8.6 para v4.0.7 ou Migrar de Host para Docker.
- Maquina Host
- Docker
Se o painel está instalado diretamente em /var/www/jexactyl:
1. Entrar em modo de manutenção e fazer backup
cd /var/www/jexactyl
sudo php artisan down
Carrega o nome do banco direto do .env para o terminal e faz o backup (não precisa trocar manualmente). Salve o backup fora de /var/www, por exemplo em ~/ ou /backups/:
export DB_DATABASE=$(grep -E '^DB_DATABASE=' /var/www/jexactyl/.env | cut -d '=' -f2 | tr -d "\"' " | xargs)
mariadb-dump -u root -p "$DB_DATABASE" > ~/jexactyl-backup.sql
# Se o comando não existir, tente:
# mysqldump -u root -p "$DB_DATABASE" > ~/jexactyl-backup.sql
Valide o dump antes de continuar:
tail -n 5 ~/jexactyl-backup.sql
grep -c "CREATE TABLE" ~/jexactyl-backup.sql
Confira também que está no PHP 8.4 esperado pela v4:
php -v
2. Baixar e extrair a nova versão
cd /var/www/jexactyl
sudo curl -Lo panel.tar.gz https://github.com/Next-Panel/Jexactyl-BR/releases/latest/download/panel.tar.gz
sudo tar -xzf panel.tar.gz
sudo rm -f panel.tar.gz
sudo chown -R www-data:www-data /var/www/jexactyl
sudo chmod -R 755 storage bootstrap/cache
3. Atualizar pacotes do Composer e Banco de Dados
cd /var/www/jexactyl
sudo composer install --no-dev --optimize-autoloader
sudo php artisan migrate --seed --force
4. Restaurar permissões, limpar cache e sair da manutenção
Confira no arquivo /var/www/jexactyl/.env se as variáveis abaixo estão definidas:
APP_LOCALE=pt-BR
APP_ENVIRONMENT_ONLY=false
Se após atualizar o painel ficar preso na tela de boas-vindas inicial, defina APP_ENVIRONMENT_ONLY=false para desativar o modo de instalação e exibir o painel normal.
cd /var/www/jexactyl
sudo chown -R www-data:www-data /var/www/jexactyl
sudo php artisan optimize:clear
sudo php artisan queue:restart
sudo php artisan up
Recarregue o PHP-FPM para garantir a versão 8.4 ativa:
sudo systemctl reload php8.4-fpm
sudo systemctl restart panel.service
sudo systemctl status panel.service --no-pager
O serviço panel.service é o worker de filas padrão da v4. O queue:restart sinaliza os workers e o restart no systemd garante o código novo em execução.
Se você instalou o painel via Docker Compose, a atualização leva menos de 1 minuto:
cd Jexactyl-BR
# 1. Gere um backup preventivo do banco de dados em ./backups/
make backup-db
# 2. Baixe a nova imagem oficial e recrie o container do painel (aplicando migrações automaticamente)
docker compose pull && docker compose up -d
# 3. Verifique os logs
docker compose logs -f panel