Instalar e configurar Redmine no Ubuntu 18.04

Redmine é uma aplicação web gratuita, de código aberto e multiplataforma para gestão de projetos que roda sobre o framework Ruby on Rails. Suporta múltiplos projetos, controle de versão (Git, SVN, CVS), rastreamento de tempo, wiki e gestão de documentos. Este guia passo a passo mostra como instalar e configurar o Redmine em um servidor Ubuntu 18.04 com Apache e MariaDB.
Principais intenções desta página
- Instalar Redmine rapidamente em Ubuntu 18.04.
- Configurar Apache/Passenger e MariaDB.
- Fazer as verificações básicas de segurança e teste.
Recursos e variações de intenção
Principal: instalar redmine no ubuntu 18.04 Variantes relacionadas: configurar redmine com apache, redmine com mariadb, instalar redmine-mysql, redmine passenger apache, redmine tutorial ubuntu
Recursos do Redmine
- Suporte a múltiplos idiomas
- Suporta múltiplos bancos de dados e registro de tempo
- Integração com notícias, documentos e gestão de arquivos
- Suporte a feeds web e notificações por e-mail
Requisitos
- Servidor com Ubuntu 18.04 instalado.
- Usuário não-root com privilégios sudo.
- Domínio (opcional) ou IP público para acesso web.
1. Instalar Apache e MariaDB
Redmine roda em um servidor web e utiliza MariaDB para armazenar dados. Instale Apache, MariaDB e o módulo Passenger com:
sudo apt-get install apache2 mariadb-server libapache2-mod-passenger -y
Após a instalação, inicie e habilite os serviços:
sudo systemctl start apache2
sudo systemctl start mariadb
sudo systemctl enable apache2
sudo systemctl enable mariadb
Verifique o status do Apache com:
sudo systemctl status apache2
Se houver problemas com permissões ou módulos, veja a seção de solução de problemas abaixo.
2. Proteger o MariaDB
Por padrão, MariaDB precisa de configuração de segurança mínima. Execute o assistente interativo:
sudo mysql_secure_installation
Responda conforme apropriado. Um exemplo comum de respostas seguras:
Enter current password for root (enter for none):
Set root password? [Y/n]: N
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y
Importante: se pretende usar um usuário MySQL específico para Redmine, crie um banco e um usuário com permissões limitadas em vez de usar root.
3. Instalar Redmine (pacote padrão do Ubuntu)
O pacote redmine está disponível no repositório padrão do Ubuntu 18.04. Instale com:
sudo apt-get install redmine redmine-mysql -y
Durante a instalação o assistente solicitará configuração do banco de dados. Nos prompts, escolha MySQL e informe a senha que será usada para a conexão do Redmine.
Após a instalação do pacote, instale o bundler Ruby (gem):
sudo gem install bundler
Crie o link simbólico do Redmine para a raiz web do Apache:
sudo ln -s /usr/share/redmine/public /var/www/html/redmine
Crie o arquivo lock do Gemfile e ajuste permissões:
sudo touch /usr/share/redmine/Gemfile.lock
sudo chown www-data:www-data /usr/share/redmine/Gemfile.lock
sudo chown -R www-data:www-data /var/www/html/redmine
4. Configurar o Apache para Redmine
Edite o arquivo passenger.conf para garantir que o Passenger execute como www-data e aponte para a instalação Ruby correta:
sudo nano /etc/apache2/mods-available/passenger.conf
Ajuste para ficar assim:
PassengerDefaultUser www-data
PassengerRoot /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini
PassengerDefaultRuby /usr/bin/ruby
Crie um virtual host para o Redmine:
sudo nano /etc/apache2/sites-available/redmine.conf
Cole o conteúdo abaixo e substitua example.com pelo seu domínio:
ServerAdmin [email protected]
DocumentRoot /var/www/html/redmine
ServerName example.com
ServerAlias www.example.com
RailsBaseURI /redmine
PassengerResolveSymlinksInDocumentRoot on
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
Habilite o site e o módulo de rewrite:
sudo a2ensite redmine
sudo a2enmod rewrite
sudo systemctl restart apache2
5. Acessar a interface web do Redmine
Abra o navegador e visite o domínio ou IP configurado, por exemplo: http://example.com. Você verá a página inicial do Redmine.
Clique em Sign In para acessar o formulário de login:
Credenciais padrão:
- Usuário: admin
- Senha: admin
Faça login e altere imediatamente a senha do admin:
Após confirmar, você verá o painel do Redmine:
Parabéns — o Redmine está instalado e acessível.
Segurança e boas práticas
- Troque a senha do usuário admin imediatamente.
- Crie um usuário MySQL dedicado para o Redmine com privilégios limitados.
- Habilite HTTPS com um certificado válido (Let’s Encrypt é uma boa opção).
- Restrinja acesso ao painel administrativo por IP, se possível.
- Faça backups regulares do banco de dados e dos diretórios de arquivos (attachments, arquivos públicos).
Exemplo simples de backup (qualitativo):
# Backup do banco de dados
mysqldump -u redmine_user -p redmine_db > /backups/redmine_db.sql
# Backup de arquivos
tar czf /backups/redmine_files-$(date +%F).tar.gz /var/www/html/redmine/files
Testes e critérios de aceitação
Critérios de aceitação mínima antes de declarar o deploy como concluído:
- A página inicial do Redmine carrega em < 10s (dependendo do infraestrutura).
- Login com admin modificado e novo usuário criado com papel não-admin.
- Criação de projeto e upload de documento funcionam.
- E-mails de notificação são enviados (se configurados).
Playbook de incidentes rápidos (rollback básico)
Se uma atualização quebrar o Redmine:
- Parar o Apache: sudo systemctl stop apache2
- Restaurar backup do banco de dados: mysql -u root -p redmine_db < /backup/redmine_db.sql
- Restaurar arquivos públicos a partir do backup tar.gz.
- Reiniciar Apache: sudo systemctl start apache2
Lista de verificação por função
Administrador de sistema:
- Instalar pacotes e módulos (Apache, MariaDB, Passenger)
- Configurar firewall e HTTPS
- Agendar backups
Administrador de aplicação (DevOps):
- Verificar Gemfile e Bundler quando atualizar
- Testar migrações e dependências Ruby
Gerente de projeto:
- Criar projetos e definir papéis
- Verificar templates e trackers
Solução de problemas comum
Problema: “500 Internal Server Error” após configurar o vhost
- Verifique permissões em /usr/share/redmine e /var/www/html/redmine (www-data)
- Verifique logs do Apache: /var/log/apache2/error.log
- Cheque se o Passenger está carregado: sudo apachectl -t -D DUMP_MODULES | grep passenger
Problema: Redmine não conecta ao MySQL
- Confirme usuário/senha/banco no arquivo de configuração de produção (se aplicável)
- Teste acesso manual com mysql -u user -p
Problema: Assets, imagens ou uploads não aparecem
- Verifique se a pasta de arquivos tem permissão de leitura para www-data
Alternativas e quando escolher outra solução
- Se precisa de uma solução com foco em integração contínua e pipelines complexos, considere ferramentas adicionais (GitLab, Jenkins) para complementar.
- Para equipes que preferem SaaS e menor manutenção, use serviços gerenciados de gestão de projetos.
- Quando Redmine for excessivamente customizado, migrar para uma instância Docker pode facilitar controle de versão e deploys.
Migração e compatibilidade
- Este guia é específico para Ubuntu 18.04. Em versões mais recentes do Ubuntu (20.04, 22.04), pacotes e caminhos do Passenger/Ruby podem diferir.
- Ao migrar de outra instância, exporte banco e arquivos, e verifique versões de Ruby e gems antes de restaurar.
Mini-metodologia de manutenção (mensal)
- Atualizar sistema e pacotes de segurança.
- Atualizar gems via bundler em ambiente de teste.
- Testar backups e restaurar amostras.
- Revisar contas de usuário e privilégios.
Checklist de teste (aceitação)
- Página inicial acessível
- Login com novo admin bem-sucedido
- Criação de projeto e issue
- Upload e download de arquivo
- Notificações por e-mail enviadas (se configuradas)
Resumo
- Instale Apache, MariaDB e Passenger.
- Proteja o MariaDB e crie credenciais limitadas.
- Instale os pacotes redmine e redmine-mysql, crie link simbólico e ajuste permissões.
- Configure o virtual host Apache e reinicie o serviço.
- Acesse via navegador, altere a senha admin e aplique boas práticas de segurança.
Importante: Sempre teste alterações em um ambiente de staging antes de aplicar em produção.
Критерии приёмки
- Redmine acessível via navegador com domínio configurado.
- Usuário admin com senha alterada.
- Funcionalidade básica (criar projeto, issue, upload) operando corretamente.
FIM
Materiais semelhantes

Como ver e excluir o histórico do YouTube
Instalar Asterisk: primeiro PBX passo a passo

Corrigir Microsoft Store que não funciona

Varredura e proteção de sites WordPress
