Andei pesquisando por alguns softwares para gerenciamento de projetos, e encontrei o Redmine. Ele tem praticamente tudo que eu procurava, como Gerenciador de Tarefas, Bugs e Documentos, Wiki e fórum.
Tive algumas pequenas dificuldades durante a instalação, até mesmo porque mexo mais com projetos Python, e não conheço muito bem os esquemas do Ruby.
Vamos lá, primeiro instale o Rails e o Mongrel:
sudo apt-get install rails mongrel
Agora o RubyGems 1.3.1:
wget http://rubyforge.org/frs/download.php/45905/rubygems-1.3.1.tgz
tar xvzf rubygems-1.3.1.tgz
sudo ruby rubygems-1.3.1/setup.rb
rm -rf rubygems-1.3.1*
sudo ln -s /usr/bin/gem1.8 /usr/bin/gem
Faça um teste:
$ gem -v
1.3.1
Após essa instalação do Rubygems tive que atualizar a versão do Rails, bem simples:
sudo gem install -v=2.2.2 rails
Vá até o diretório, ou então crie um, onde ficaram as suas aplicações Rails (o Redmine por exemplo), aqui eu criei um diretório ~/rails, e o Redmine ficará em ~/rails/redmine.
mkdir ~/rails
cd ~/rails
Baixe o Redmine do repositório. Aqui estou utilizando a versão trunk (em desenvolvimento) pois não é um caso tão crítico, e eles dizem que mesmo estando em desenvolvimento ele raramente “quebra”.
svn co http://redmine.rubyforge.org/svn/trunk/ redmine
Vá até o diretório do Redmine.
cd redmine
Abra o arquivo config/environment.rb e adicione a linha seguinte no final do arquivo, antes do end:
config.action_controller.session = { :session_key => "_myapp_session", :secret => "some secret phrase of at least 30 characters" }
Configurando o Redmine para trabalhar com o MySQL 5
Você terá que baixar dois pacotes:
sudo apt-get install ruby1.8-dev libmysqlclient15-dev
Após isso, instale o MySQL através do gem:
sudo gem install mysql
Crie um banco de dados e um usuário para o Redmine:
mysql -uroot -p
mysql> create database redmine;
mysql> grant all privileges on redmine.* to 'redmine'@'localhost' identified by 'passwd';
E configure o arquivo config/database.yml com o seu nome de usuário e senha do MySQL (em “production”).
$ mv config/database.yml.example config/database.yml
Criando o banco de dados do Redmine
Ainda no diretório do Redmine (~/rails/redmine), execute os seguintes comandos:
$ rake db:migrate RAILS_ENV="production"
$ rake redmine:load_default_data RAILS_ENV="production"
Iniciando o servidor
Para rodar o servidor, basta executar o comando abaixo, ele identificará automaticamente o Mongrel e rodará. Após a execução acesse através do seu navegador http://0.0.0.0:4000/ e o Redmine estará rodando.
$ script/server --environment=production -p4000
O usuário padrão para acessar como administrador no sistema é admin, e a senha é admin também.
Bom, foi meio de cabeça, mas acho que não faltou nada. :)
REDMINE é muito bom!
Fala Caio, muito bom o post, objetivo e direto.
Só gostaria de fazer um adendo, pois no meu caso eu precisei especificar o arquivo de socket do MySQL, pois o seguinto erro era retornado:
rake aborted!
Can’t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock’ (2)
Para resolver, bastou eu especificar explicitamente o arquivo de socket do MySQL dentro do arquivo config/database.yml, então no meu caso ficou assim:
Acho que mais pessoas podem ter esse problema, então segue a dica :)
[]s
Boa.
Obrigado pela excelente dica Marcus :)
Marcus,
Grande dica e excelente tutorial.
Uma dúvida, como faço para o redmine iniciar com o sistema após o reboot?
[ ]s
essa instalação já possibilita o funcionamento do repositório??
Não, somente o funcionamento básico.
Isso depende muito do repositório que for utilizado, veja na sessão de HowTos do Redmine: http://www.redmine.org/wiki/redmine/HowTos
Olá Pessoal,
Estou iniciando no uso do RedMine com o Linux, e estou tentando migrar minha aplicação que roda no Windows (via BitNami Stack) para um servidor Linux.
Fiz a instalação do RedMine no Linux (graças a esse tutorial do Caio) e funcionou perfeitamente, então fui para a migração dos dados.
Copiei os arquivos que estavam no diretório C:\…\BitNami Redmine Stack\apps\redmine\ e sobrescrevi na instalação do redmine que estava rodando no Linux.
Depois mudei o arquivo de configuração do banco (redmine\config\database.yml) apontando para o serviço do MySQL que está ativo no Windows (apenas para testar antes de migrar o banco do MySQL do Windows para o Linux).
Estou atualmente com o status redMine 500 error quando tento acessar a aplicação.
Alguém saberia me dizer se meus passos estão corretos e o que deveria fazer nesse caso?
Grato desde já.
Bem provável que seja algo relacionado ao seu banco de dados mesmo, ou alguma permissão.
No log do servidor não mostra nada?
Abraços :)
Olá,
Instalei o Redmine 0.8.4.devel.2858 no meu Ubuntu 9.0.4 e memo não inicializa sozinho .
Como faço para inicializar o Redmine na inicialização do ubuntu?
–
Edson
Vá em Sistema > Preferências > Aplicativos de sessão.
Na aba Programas iniciais clique em Adicionar e coloque:
Nome: Redmine
Comando: /pasta/do/seu/redmine/script/server –environment=production -p4000
Personalize os dados acima de acordo com as suas necessidades.
Parabéns pelo material disponibilizado, perfeito!
O problema de disponibiliza a execução assim, é que na verdade só executa quando o mesmo usuário se logar…
Criei um script compatível com os mecanismos do Ubuntu, que deve ser copiado para /etc/init.d , talvez se chamando redmine, por exemplo e funcionou para meu caso.
Lembre-se de comandar chmod 755 /etc/init.d/redmine para transformar em executavel, e update-rc.d redmine defaults para iniciar no boot e pronto.
Pode ser necessário ajustar os parâmetros dentro do script que definiem a porta pretendida (4000 no meu caso) e o path onde instalou o redmine (/var/www/rails/redmine no meu caso)
#!/bin/bash # # manage redmile and configure some options # By Leitao 10-25-2008 set -e set -u ${DEBIAN_SCRIPT_DEBUG:+ set -v -x} PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin test -x /var/www/rails/redmine/script/server || exit 0 [ -f /etc/default/rcS ] && . /etc/default/rcS . /lib/lsb/init-functions # PARAMETERS REDMINE_PATH=/var/www/rails/redmine SCRIPT=script/server ENVIRONMENT=production PORT=4000 # COMMANDS AWK=/usr/bin/gawk GREP=/bin/fgrep KILL=/bin/kill LSOF=/usr/bin/lsof PS=/bin/ps start_redmine() { log_begin_msg "Loading Redmine site..." type usplash_write >/dev/null 2>/dev/null && usplash_write "TIMEOUT 120" || true if [ "$VERBOSE" != no ]; then $REDMINE_PATH/$SCRIPT --environment=$ENVIRONMENT -p$PORT & else $REDMINE_PATH/$SCRIPT --environment=$ENVIRONMENT -p$PORT & >/dev/null 2>&1 fi type usplash_write >/dev/null 2>/dev/null && usplash_write "TIMEOUT 15" || true log_end_msg $? } stop_redmine() { log_begin_msg "Flushing Redmine site..." if [ "$VERBOSE" != no ]; then $KILL `$PS aux | $GREP -v $GREP | $GREP ruby | $GREP redmine | $GREP $ENVIRONMENT | $GREP $PORT | $AWK '{ print $2 }'` else $KILL `$PS aux | $GREP -v $GREP | $GREP ruby | $GREP redmine | $GREP $ENVIRONMENT | $GREP $PORT | $AWK '{ print $2 }'` >/dev/null 2>&1 fi log_end_msg $? } restart_redmine() { log_begin_msg "Reloading Redmine site..." if [ "$VERBOSE" != no ]; then $LSOF -n -i:$PORT >/dev/null 2>&1 ISNOTRUNNING=$? if [ "$ISNOTRUNNING" ]; then $KILL `$PS aux | $GREP -v $GREP | $GREP ruby | $GREP redmine | $GREP $ENVIRONMENT | $GREP $PORT | $AWK '{ print $2 }'` $REDMINE_PATH/$SCRIPT --environment=$ENVIRONMENT -p$PORT & fi else $LSOF -n -i:$PORT >/dev/null 2>&1 ISNOTRUNNING=$? if [ "$ISNOTRUNNING" ]; then $KILL `$PS aux | $GREP -v $GREP | $GREP ruby | $GREP redmine | $GREP $ENVIRONMENT | $GREP $PORT | $AWK '{ print $2 }'` >/dev/null 2>&1 $REDMINE_PATH/$SCRIPT --environment=$ENVIRONMENT -p$PORT & >/dev/null 2>&1 fi fi type usplash_write >/dev/null 2>/dev/null && usplash_write "TIMEOUT 15" || true log_end_msg $? } case "${1:-''}" in [Ss][Tt][Aa][Rr][Tt]) start_redmine ;; [Ss][Tt][Oo][Pp]) stop_redmine ;; [Ff][Oo][Rr][Cc][Ee]-[Rr][Ee][Ll][Oo][Aa][Dd]|[Rr][Ee][Ss][Tt][Aa][Rr][Tt]) restart_redmine ;; *) log_success_msg "Usage: $0 {help|start|stop|restart|force-reload} " if [ "$1" = "help" ] || [ "$1" = "Help" ] || [ "$1" = "HELP" ] || [ "$1" = "-h" ] || [ "$1" = "--help" ]; then echo -e "\n33[01;32mhelp33[00m: Mostra este texto de ajuda" echo -e "33[01;32mstart33[00m: Inicia o site Redmine com as regras configuradas" echo -e "33[01;32mstop33[00m: Interrompe o site Redmine removendo da memoria" echo -e "33[01;32mrestart33[00m: Reinicia o site Redmine com as regras configuradas. O mesmo que um start e stop em sequencia" echo -e "33[01;32mforce-reload33[00m: O mesmo que restart" exit 2 fi exit 1 ;; esac exit 0Perfeito!
Me ajudou bastante.
Obrigado e parabens!