Unit3d - Private Tracker

Aprenda a instalar e configurar o UNIT3D em um servidor Debian 12 com CloudPanel e Nginx. Um guia completo, otimizado e seguro para levantar seu próprio tracker privado com alto desempenho.

Unit3d - Private Tracker

🚀 Tutorial de Instalação do UNIT3D no Debian 12

📋 Visão Geral

Este tutorial descreve o processo completo de instalação do UNIT3D (Private Torrent Tracker) em um servidor Debian 12, utilizando CloudPanel e Nginx. Todas as informações sensíveis foram omitidas para segurança.


🎯 Pré-requisitos

  • Debian 12 atualizado
  • CloudPanel instalado e configurado
  • Acesso root ou sudo ao servidor
  • Domínio configurado e apontando para o servidor

🔧 Passo a Passo

1. Instalar Dependências

sudo apt update && sudo apt upgrade -y
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php8.4 php8.4-fpm php8.4-mysql php8.4-redis php8.4-xml php8.4-zip php8.4-mbstring php8.4-curl php8.4-gd php8.4-bcmath php8.4-intl php8.4-opcache
sudo apt install redis-server
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt install nodejs
curl -fsSL https://bun.sh/install | bash

2. Clonar o Repositório

cd ~/htdocs
git clone https://github.com/HDInnovations/UNIT3D-Community-Edition.git suadiretorio
cd suadiretorio

3. Configurar o Ambiente

cp .env.example .env
nano .env
# Edite as variáveis conforme seu ambiente (DB, REDIS, MAIL, etc)

4. Instalar Dependências do Projeto

composer install --prefer-dist --no-dev --optimize-autoloader
bun install
bun run build

5. Configurar Banco de Dados

  • Crie o banco e usuário no MySQL/MariaDB.
  • Edite o .env com as credenciais.
  • Execute:
php artisan key:generate
php artisan migrate --seed

6. Permissões

sudo chown -R usuario:usuario ~/htdocs/suadiretorio
sudo chmod -R 755 ~/htdocs/suadiretorio
sudo chmod -R 775 ~/htdocs/suadiretorio/storage
sudo chmod -R 775 ~/htdocs/suadiretorio/bootstrap/cache

7. Configurar Nginx (CloudPanel)

  • Certifique-se que o root do site aponte para ~/htdocs/suadiretorio/public
  • O bloco do Nginx deve conter:
root /home/usuario/htdocs/suadiretorio/public;
index index.php index.html;
location / {
    try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
    include fastcgi_params;
    fastcgi_pass 127.0.0.1:19001;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}

8. Configurar Queue Worker

Crie /etc/systemd/system/unit3d-queue.service:

[Unit]
Description=UNIT3D Queue Worker
After=network.target

[Service]
Type=simple
User=usuario
Group=usuario
WorkingDirectory=/home/usuario/htdocs/suadiretorio
ExecStart=/usr/bin/php artisan queue:work --sleep=3 --tries=3 --max-time=3600
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable unit3d-queue
sudo systemctl start unit3d-queue
sudo systemctl enable redis
sudo systemctl start redis

9. Otimizar Performance

Edite /etc/php/8.4/fpm/conf.d/10-opcache.ini:

opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=2
opcache.fast_shutdown=1
opcache.validate_timestamps=0
opcache.save_comments=1
sudo systemctl restart php8.4-fpm
php artisan set:all_cache

10. Configurar Cron Jobs

crontab -e

Adicione:

* * * * * cd /home/usuario/htdocs/suadiretorio && php artisan schedule:run >> /dev/null 2>&1
0 2 * * * cd /home/usuario/htdocs/suadiretorio && php artisan backup:run >> /dev/null 2>&1
0 3 * * 0 cd /home/usuario/htdocs/suadiretorio && find storage/logs -name "*.log" -mtime +7 -delete >> /dev/null 2>&1

11. Finalização

  • Solicite o SSL pelo CloudPanel.
  • Acesse https://seudominio e faça login.
  • Teste todas as funcionalidades.

Dica: Sempre use senhas fortes, mantenha backups e monitore os logs do sistema.


Versão do Tutorial: 1.0
Data: Julho 2025
Sistema: Debian 12 + CloudPanel
UNIT3D: v9.1.2

Tutorial feito por Pablo Murad