O gerenciamento de projetos moderno exige flexibilidade, privacidade e controle total sobre os dados da equipe. Ferramentas baseadas em nuvem são convenientes, mas muitas vezes impõem limites de custo, dependência de internet estável e preocupações com a soberania dos dados. Para organizações que buscam autonomia tecnológica, a auto-hospedagem ferramentas produtividade surge como a solução definitiva. Neste tutorial, vamos configurar o Leantime em um ambiente Linux, transformando um servidor VPS simples em um centro de comando robusto para gerenciamento projetos open source.
O Leantime é uma plataforma focada na interseção entre inovação e execução. Diferente de ferramentas genéricas, ele incorpora metodologias como Lean Startup e OKRs diretamente no fluxo de trabalho, ajudando equipes a não apenas acompanhar tarefas, mas a validar hipóteses de negócio. Ao optar por instalar leantime vps, você garante que toda essa inteligência operacional permaneça sob seu controle, sem mensalidades recorrentes ou travamentos de funcionalidades.
1. Requisitos de Infraestrutura e Preparação do Servidor
Antes de iniciar a instalação do leantime self-hosted, é fundamental garantir que o ambiente esteja preparado para rodar uma aplicação web moderna baseada em PHP. O Leantime utiliza o framework Laravel, o que exige recursos mínimos específicos para garantir performance e estabilidade.
Requisitos Mínimos Recomendados:
- CPU: 1 núcleo (2 núcleos recomendados para produção)
- RAM: 1 GB mínimo (2 GB recomendado)
- Disco: 10 GB de espaço em SSD
- Sistema Operacional: Ubuntu 22.04 LTS ou Debian 11/12
- Acesso: Usuário com privilégios
sudo
O primeiro passo é atualizar o sistema operacional e instalar as dependências básicas do pacote de ferramentas.
sudo apt update && sudo apt upgrade -y
sudo apt install curl git unzip zip wget -y
2. Instalação do Stack LEMP (Linux, Nginx, MySQL, PHP)
O Leantime não possui um banco de dados embutido; ele depende de um SGBD relacional robusto para armazenar projetos, usuários e configurações. Recomendamos o uso do MySQL ou MariaDB. Além disso, o servidor web Nginx é preferível ao Apache por sua eficiência no gerenciamento de conexões concorrentes em ambientes VPS.
2.1. Instalando e Configurando o Banco de Dados
Vamos instalar o MySQL Server e garantir que ele inicie automaticamente com o sistema.
sudo apt install mysql-server -y
sudo systemctl enable mysql
sudo systemctl start mysql
Para segurança, execute o script de configuração de segurança do MySQL:
sudo mysql_secure_installation
Agora, crie um banco de dados dedicado e um usuário com senha forte para o Leantime. Isso isola os dados da aplicação.
sudo mysql -u root -p
CREATE DATABASE leantime_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'leantime_user'@'localhost' IDENTIFIED BY 'SuaSenhaForteAqui';
GRANT ALL PRIVILEGES ON leantime_db.* TO 'leantime_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
2.2. Instalando PHP e Extensões Necessárias
O Laravel, framework por trás do Leantime, requer extensões específicas do PHP para manipulação de arquivos, criptografia e comunicação com o banco de dados.
sudo apt install php8.1-fpm php8.1-mysql php8.1-curl php8.1-gd php8.1-intl php8.1-mbstring php8.1-xml php8.1-zip php8.1-bcmath php8.1-json -y
Dica de Performance: Em servidores com recursos limitados, ajuste o tempo máximo de execução no arquivo /etc/php/8.1/fpm/php.ini para permitir uploads de arquivos maiores e processos longos:
sudo sed -i 's/max_execution_time = 30/max_execution_time = 300/' /etc/php/8.1/fpm/php.ini
sudo systemctl restart php8.1-fpm
3. Download e Configuração do Leantime
Agora que o ambiente está pronto, vamos baixar os arquivos da aplicação. Recomendamos sempre utilizar a versão mais recente (Latest Release) disponível no repositório oficial ou GitHub para garantir correções de segurança.
3.1. Baixando e Extraindo os Arquivos
Crie um diretório para a aplicação e baixe o código fonte. Substitua vX.X.X pela versão mais recente disponível no site oficial do Leantime.
sudo mkdir -p /var/www/leantime
cd /var/www/leantime
# Exemplo para baixar a última release (verifique o link atualizado)
wget https://github.com/Leantime/leantime/archive/refs/tags/v3.5.0.zip
unzip v3.5.0.zip
mv leantime-3.5.0/* .
rm -rf leantime-3.5.0 v3.5.0.zip
3.2. Configuração de Permissões e Arquivo de Ambiente
O Leantime utiliza um arquivo .env para armazenar configurações sensíveis, como credenciais do banco de dados. Vamos copiar o modelo existente e editá-lo.
cp .env.example .env
sudo chown -R www-data:www-data /var/www/leantime
sudo chmod -R 755 /var/www/leantime
Edite o arquivo de configuração:
sudo nano /var/www/leantime/.env
Altere as seguintes linhas conforme sua configuração:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=leantime_db
DB_USERNAME=leantime_user
DB_PASSWORD=SuaSenhaForteAqui
Salve o arquivo (Ctrl+O, Enter, Ctrl+X) e gere a chave da aplicação:
php artisan key:generate
4. Configuração do Servidor Web Nginx
Para que o Leantime seja acessível via navegador, precisamos configurar um Virtual Host no Nginx. Este bloco de configuração gerencia o redirecionamento HTTPS e as regras de reescrita de URL necessárias para o Laravel funcionar corretamente.
sudo nano /etc/nginx/sites-available/leantime
Cole a seguinte configuração, ajustando o server_name para seu domínio:
server {
listen 80;
server_name projetos.suaempresa.com.br;
root /var/www/leantime/public;
index index.php index.html;
charset utf8mb4;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
client_max_body_size 50M;
}
# Redirecionamento HTTP para HTTPS (se usar SSL)
server {
listen 443 ssl http2;
server_name projetos.suaempresa.com.br;
root /var/www/leantime/public;
index index.php index.html;
# Certificados SSL (Configure com Let's Encrypt depois)
# ssl_certificate /etc/letsencrypt/live/projetos.suaempresa.com.br/fullchain.pem;
# ssl_certificate_key /etc/letsencrypt/live/projetos.suaempresa.com.br/privkey.pem;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Ative o site e teste a configuração do Nginx:
sudo ln -s /etc/nginx/sites-available/leantime /etc/nginx/sites-enabled/
sudo nginx -t
Se o teste retornar syntax is ok, reinicie o serviço:
sudo systemctl restart nginx
5. Segurança e Certificado SSL (Let's Encrypt)
Nunca deixe um servidor de produção acessível via HTTP não criptografado. Vamos instalar o Certbot para obter certificados SSL gratuitos do Let's Encrypt, garantindo que a conexão entre o navegador e seu servidor projetos linux seja segura.
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d projetos.suaempresa.com.br
O assistente do Certbot irá:
- Pedir um e-mail de contato para alertas de expiração.
- Solicitar concordância com os termos de serviço.
- Perguntar se deseja redirecionar todo o tráfego HTTP para HTTPS (escolha
2).
O Nginx será recarregado automaticamente e o certificado SSL estará ativo. Verifique no navegador se o ícone de cadeado aparece na barra de endereço.
6. Primeira Execução e Configuração Inicial
Agora que tudo está conectado, abra seu navegador e acesse https://projetos.suaempresa.com.br. Você será direcionado para a tela de instalação inicial do Leantime.
- Criação de Admin: Insira o e-mail e senha desejados para o primeiro usuário (Administrador).
- Informações da Empresa: Preencha o nome da organização. Isso personalizará relatórios e cabeçalhos.
- Idioma e Fuso Horário: Selecione
Português (Brasil)e seu fuso horário local.
Após clicar em "Create Account", o sistema realizará as migrações finais do banco de dados. Se tudo ocorreu bem, você verá o dashboard principal com exemplos de projetos.
7. Manutenção Preventiva e Scripts Úteis
Para manter seu leantime self-hosted saudável, é crucial entender como ele funciona internamente. O Leantime utiliza filas (queues) para enviar e-mails, gerar relatórios em PDF e processar uploads de imagens.
7.1. Configurando o Supervisor para Filas
Sem um gerenciador de processos, as tarefas em segundo plano podem falhar silenciosamente. Instale e configure o Supervisor:
sudo apt install supervisor -y
sudo nano /etc/supervisor/conf.d/leantime-worker.conf
Cole a configuração abaixo para gerenciar o worker do Laravel:
[program:leantime-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/leantime/artisan queue:work --sleep=3 --tries=3
autostart=true
autorestart=true
stopasuser=www-data
user=www-data
numprocs=1
redirect_stderr=true
stdout_logfile=/var/www/leantime/storage/logs/worker.log
Inicie e habilite o serviço:
sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl start leantime-worker:*
7.2. Agendamento de Tarefas (Cron)
O Leantime precisa executar tarefas agendadas, como lembretes de reuniões e backups internos. Configure o Cron do sistema:
sudo crontab -e
Adicione a seguinte linha ao final do arquivo:
* * * * * cd /var/www/leantime && php artisan schedule:run >> /dev/null 2>&1
8. Boas Práticas para Auto-hospedagem de Ferramentas Produtividade
Ao escolher a auto-hospedagem ferramentas produtividade, você assume a responsabilidade pela continuidade do negócio. Siga estas diretrizes:
- Backups Regulares: Configure um script diário que exporte o banco de dados e compacte a pasta
/var/www/leantime/storage(onde ficam os uploads). Envie esses arquivos para um storage externo (S3, Backblaze ou outro servidor). - Monitoramento: Utilize ferramentas como Uptime Kuma ou Prometheus para monitorar a disponibilidade do serviço e o consumo de memória do PHP-FPM.
- Atualizações: Verifique semanalmente se há novas versões no repositório oficial. Sempre faça backup antes de atualizar o código fonte via Git ou download manual.
- Firewall: Mantenha a porta 3306 (MySQL) bloqueada para acesso externo, permitindo apenas conexões locais (
127.0.0.1). Abra apenas as portas 80 e 443 no firewall do servidor.
Conclusão
Configurar o Leantime em um ambiente próprio oferece uma combinação poderosa de controle, personalização e economia. Ao dominar o processo de instalar leantime vps, você não apenas implementa uma ferramenta de gerenciamento projetos open source, mas também fortalece a maturidade técnica da sua infraestrutura de TI.
O Leantime se destaca por não ser apenas um "todo list", mas uma plataforma estratégica que alinha execução tática com objetivos estratégicos. Com seu servidor linux configurado, as permissões adequadas e o SSL ativo, sua equipe estará pronta para impulsionar seus projetos com a metodologia Lean.
Lembre-se: a tecnologia é apenas um meio. O sucesso vem da adoção correta da ferramenta pela equipe. Invista tempo em treinar seus colaboradores sobre os fluxos de trabalho do Leantime tanto quanto investiu na configuração técnica do servidor.