anúncios

domingo, 23 de agosto de 2015

Instalando e Configurando Redmine no Debian

O que é o Redmine ?

Redmine é um software livre, gerenciador de projetos baseados na web e ferramenta de gerenciamento de bugs. Ele contém calendário e gráficos de Gantt para ajudar na representação visual dos projetos e seus deadlines (prazos de entrega). Ele pode também trabalhar com múltiplos projetos.

O design do Redmine foi influenciado pelo Trac, um pacote de software semelhante.
O Redmine é escrito usando o framework Ruby on Rails. Ele é multiplataforma e suporta diversos banco de dados e possibilita o uso integrado com vários repositórios de versionamento de código fonte, tais como: SVN, Git, CVS.

Depois de conhecer o Redmine e pra que serve, podemos seguir os procedimentos de instalação e configuração do Redmine em seu servidor GNU/Linux Debian.

Observação: Testado no GNU/Linux Debian 8 (Jessie) e versão atual do Redmine é 3.1.0 até a data de publicação deste post.

Atualizando o repositório de pacotes
#apt-get update
Instalando os pacotes pré-requisitos necessários
#apt-get install rubygems, libopenssl-ruby libmysql-ruby libapache2-mod-fcgid libapache2-mod-passenger ruby libnet-ssh-ruby1.8 python-setuptools librmagick-ruby1.8 mysql-server libmysqlclient15-dev libmagickcore-dev libmagickwand-dev ruby-dev

Download do Readmine
Opcional: Salvo em /usr/src/

$wget -c "www.redmine.org/releases/redmine-3.1.0.tar.gz"
#tar -xzvf redmine-3.1.0.tar.gz -C /usr/src/

Habilitar os módulos abaixo no Apache
#a2enmod fcgid
#a2enmod passenger

Reinicie o servidor Apache
# /etc/init.d/apache2 restart
[ ok ] Restarting web server: apache2 ... waiting ....
Instalar o Rails
# gem install rails --version 4.0.0
Aguarde... É demorado essa parte.
Definição do banco de dados utilizado no Redmine, nesse caso será utilizado o MySQL.
#cd /usr/src/redmine-3.1.0/config
Renomeia o arquivo database.yml
#mv database.yml.example database.yml
Editar o arquivo database.yml com as informações (database, username, password) do banco criado anteriormente.

#vim database.yml
5 production:
6 adapter: mysql2
7 database: redmine
8 host: localhost
9 username: redmine
10 password: "senha_redmine"
11 encoding: utf8

Criando o banco de dados para o Redmine no MySQL
# mysql_install_db
# mysql -u root -p
Enter password: < digite a senha de root que foi definida na instalação do MySQL > Criar o banco de dados redmine
mysql> create database redmine character set utf8;
Criar o usuário redmine para o banco readmine
mysql> GRANT ALL PRIVILEGES ON *.* TO redmine@localhost IDENTIFIED BY 'senha_redmine' WITH GRANT OPTION; Query OK, 0 rows affected (0.15 sec)
mysql> quit

Instalação do bundler
#gem install bundler
#cd /usr/src/redmine-3.1.0
Nesse caso será instalado o Redmine sem os bancos PostgreSQL e SQLite, o banco utilizado é MySQL configurado anteriormente.

# bundle install --without postgresql sqlite development test
Log execução do bundle install. Um pouco demorado essa parte.
Don't run Bundler as root. Bundler can ask for sudo if it is needed, and
installing your bundle as root will break this application for all non-root
users on this machine.
Fetching gem metadata from https://rubygems.org/.........
Fetching version metadata from https://rubygems.org/..
Resolving
dependencies.....................................................
Using rake 10.4.2
Using i18n 0.7.0
Installing json 1.8.3 with native extensions
Installing minitest 5.8.0
Using thread_safe 0.3.5
Installing tzinfo 1.2.2
Installing activesupport 4.2.3
Installing builder 3.2.2
Using erubis 2.7.0
Installing mini_portile 0.6.2
Installing nokogiri 1.6.6.2 with native extensions
Installing rails-deprecated_sanitizer 1.0.3
Installing rails-dom-testing 1.0.7
Installing loofah 2.0.3
Installing rails-html-sanitizer 1.0.2
Installing actionview 4.2.3
Installing rack 1.6.4
Using rack-test 0.6.3
Installing actionpack 4.2.3
Installing globalid 0.3.6
Installing activejob 4.2.3
Installing mime-types 2.6.1
Installing mail 2.6.3
Installing actionmailer 4.2.3
Installing actionpack-action_caching 1.1.1
Installing actionpack-xml_parser 1.0.2
Installing activemodel 4.2.3
Installing arel 6.0.3
Installing activerecord 4.2.3
Using bundler 1.10.6
Installing coderay 1.1.0
Using thor 0.19.1
Installing railties 4.2.3
Installing jquery-rails 3.1.3
Installing mysql2 0.3.19 with native extensions
Installing net-ldap 0.3.1
Installing protected_attributes 1.1.3
Installing ruby-openid 2.3.0
Installing rack-openid 1.4.2
Installing sprockets 3.3.2
Installing sprockets-rails 2.3.2
Installing rails 4.2.3
Installing rbpdf 1.18.6
Installing redcarpet 3.1.2 with native extensions
Installing request_store 1.0.5
Bundle complete! 28 Gemfile dependencies, 45 gems now installed.
Gems in the groups postgresql, sqlite, development, test and rmagick were not installed.
Use `bundle show [gemname]` to see where a bundled gem is installed.
Criar um token para sessão
#rake generate_secret_token
Criar as tabelas do banco de dados e popular a base de dados
RAILS_ENV=production rake db:migrate
RAILS_ENV=production REDMINE_LANG=pt-BR rake redmine:load_default_data


Acessar o diretório onde fez a instalação do Redmine, nesse caso é: /usr/src/redmine-3.1.0
cd /usr/src/redmine-3.1.0
Setando as devidas permissões do Redmine
#chown -R www-data:www-data files log tmp public/plugin_assets
#chmod -R 755 files log tmp public/plugin_assets


Startar o Redmine
# ruby script/rails server webrick -e production
script/rails no longer exists, please use bin/rails instead.
Se aparecer a mensagem acima, então fazer como sugere na mensagem.
# ruby bin/rails server webrick -e production
=> Booting WEBrick
=> Rails 4.2.3 application starting in production on http://localhost:3000
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server
[2015-08-19 22:04:11] INFO WEBrick 1.3.1
[2015-08-19 22:04:11] INFO ruby 1.9.3 (2012-04-20) [i486-linux]
[2015-08-19 22:04:11] INFO WEBrick::HTTPServer#start: pid=24768 port=3000
Teste no navegador: http://localhost:3000 ou http://ip-ou-nome-servidor:3000
Username: admin
Password: admin

Criando um script para inicialização automática
Por padrão o Redmine não inicializa o servidor WEBrick. Então será necessário criar um script para inicializá-lo sempre que o sistema operacional for iniciado.
Dentro do diretório /etc/init.d crie um arquivo com o nome redmine.sh, seta a permissão para a execução e adicione o conteúdo conforme abaixo:

#vim /etc/init.d/redmine.sh
#!/bin/bash
cd /usr/src/redmine-3.1.0
ruby bin/rails server webrick -e production
ESC + :x (sai e salva do editor Vim).
Em seguida adicione o script nos diretórios de inicialização com o seguinte comando:
#update-rc.d redmine.sh defaults 99
Screenshot Redmine em execução

Feito!

2 comentários:

  1. qual a source.list que voce usou!? comigo nao encontra o ruby

    ResponderExcluir
    Respostas
    1. Arquivo sources.list usado no Debian Jessie
      # OFFICIAL DEBIAN REPOS
      ###### Debian Main Repos
      deb http://ftp.br.debian.org/debian/ stable main contrib non-free
      deb-src http://ftp.br.debian.org/debian/ stable main contrib non-free

      deb http://ftp.br.debian.org/debian/ stable-updates main contrib non-free
      deb-src http://ftp.br.debian.org/debian/ stable-updates main contrib non-free

      deb http://security.debian.org/ stable/updates main
      deb-src http://security.debian.org/ stable/updates main

      deb http://ftp.debian.org/debian jessie-backports main
      deb-src http://ftp.debian.org/debian jessie-backports main

      Feito!

      Excluir