INSTALANDO REDMINE 2.X NO DEBIAN WHEEZY COM APACHE PASSENGER

INSTALAÇÃO DO REDMINE E DEPENDÊNCIAS

 

Instalando alguns pacotes básicos.

Entre como superusuário e execute:

# aptitude install ruby
# aptitude install libapache2-mod-passenger
# aptitude install libmagickcore-dev
# aptitude install libmagickwand-dev
# aptitude install ruby-dev
# aptitude install libmysqlclient-dev
# aptitude install mysql-server

RESOLVENDO PROBLEMAS NA INSTALAÇÃO DO MYSQL-SERVER

Se você instalou sem problemas o mysql-server no comando acima pode pular para o próximo tópico.

Quando tentamos instalar o mysql-server ele pode apresentar um erro de repositório, pois busca os arquivos na unidade de cdrom.

Se isso acontecer, rode comando a seguir. Este comenta a linha referente ao cdrom e também roda o apt-get update para atualizar a lista de repositórios.

# mv /etc/apt/sources.list /etc/apt/sources.list0 && cat /etc/apt/sources.list0 | sed ‘s/deb cdrom:/#deb cdrom:/’ >> /etc/apt/sources.list && apt-get update

Rode novamente:

# aptitude install mysql-server

Na instalação do mysql-server será solicitada a senha de root do mysql-server. Usamos esta senha para dar manutenção no ambiente do mysql.

BAIXANDO E INSTALANDO MANUALMENTE OS PACOTES DO REDMINE

Agora iremos baixar e extrair a versão atual do Redmine e criar um link simbólico para a pasta public.

Na minha instalação automatizada do apt-get, mostra-se desatualizada e incompatível com o plugin do scrum.

Baixando e descompactando o Redmine versão usada 2.6.0:

# cd /opt
# wget
http://www.redmine.org/releases/redmine-2.6.0.tar.gz
# tar -zxvf redmine-2.6.0.tar.gz
# cd /var/www
# ln -s /opt/redmine-2.6.0/public redmine
# chown -R www-data:www-data /opt/redmine-2.6.0

PREPARANDO O BANCO DE DADOS E CRIANDO UM USUÁRIO COM PRIVILÉGIOS ADMINISTRATIVOS

Agora é a hora de usar a senha que foi cadastrar na instalação do mysql-server:

# mysql -u root -p

Criando banco de dados e usuário:

MYSQL> CREATE DATABASE redmine_default CHARACTER SET utf8;
MYSQL> CREATE USER ‘redmine’@’localhost’ IDENTIFIED BY ‘cadastrando a senha aqui’;
MYSQL> GRANT ALL PRIVILEGES ON redmine_default.* TO ‘redmine’@’localhost’;

Voltando ao bash:

MYSQL> exit

 

CONFIGURANDO O ACESSO A BASE DE DADOS E O AMBIENTE REDMINE

 

Configurando o acesso à base de dados.

Criando arquivo database.yml:

# cd /opt/redmine-2.6.0/config
# cp database.yml.example database.yml

Editando:

# nano database.yml

Fica mais ou menos assim:

production:
adapter: mysql2
database: redmine_default
host: localhost
username: redmine
password: “senha que você cadastrou no banco de dados”
encoding: utf8

development:
adapter: mysql2
database: redmine_development
host: localhost
username: root
password: “senha de root do redmine”
encoding: utf8

# Warning: The database defined as “test” will be erased and
# re-generated from your development database when you run “rake”.
# Do not set this db to the same as development or production.

test:
adapter: mysql2
database: redmine_test
host: localhost
username: root
password: “senha de root do redmine”
encoding: utf8

CONFIGURANDO O AMBIENTE REDMINE

Criando o arquivo configuration.yml:

# cd /opt/redmine-2.6.0/config
# cp configuration.yml.example configuration.yml

Editando:

# nano configuration.yml

Descomente as linhas de forma que fique assim:

  email_delivery:
delivery_method: :sendmail
attachments_storage_path:
autologin_cookie_name:
autologin_cookie_path:
autologin_cookie_secure:
scm_mercurial_command:
scm_git_command:
scm_cvs_command:
scm_bazaar_command:
scm_darcs_command:
scm_stderr_log_file:
database_cipher_key:
secret_token: ‘some custom string with at least 30 random characters’
rmagick_font_path:
production:
development:

 

INSTALANDO E CONFIGURANDO O GERENCIADOR DE PROGRAMAS RUBY

 

Dando permissão sudo para o usuário que você vai instalar o bundle:

$ su (vai pedir a senha de root)
# adduser nomedousario sudo (adiciona o usuário ao grupo sudo)
# reboot (necessário reiniciar para aplicar as mudanças ou fazer logoff)

Instalando um gerenciador de programas Ruby:

Após salvar a configuração, é hora de instalar o ruby bundle. Primeiramente instalaremos o bundler gem. Depois seguiremos com a instalação do bundle.

$ sudo gem install bundler
(necessário o sudo pois algumas permissões são negadas com usuário comum e não podemos instalar ele como root pois é uma brecha de segurança)

$ cd /opt/redmine-2.6.0
$ bundle install –without development test postgresql sqlite
$ sudo bundle install
$ sudo rake generate_secret_token

COLOCANDO CHAVE DE SEGURANÇA SECRET_TOKEN

Ao rodar o comando:

$ cat /opt/redmine-2.6.0/config/initializers/secret_token.rb

O resultado é mais ou menos assim:

# This file was generated by ‘rake generate_secret_token’, and should
# not be made visible to public.
# If you have a load-balancing Redmine cluster, you will need to use the
# same version of this file on each machine. And be sure to restart your
# server when you modify this file.
#
# Your secret key for verifying cookie session data integrity. If you
# change this key, all old sessions will become invalid! Make sure the
# secret is at least 30 characters and all random, no regular words or
# you’ll be exposed to dictionary attacks.
RedmineApp::Application.config.secret_token = ’16ea466c1e691928a540952010719bd25396b0f627c63d20b4cb3da555903757e2872c642ad141d8′

Copie a chave criptografada na última linha que está entre aspas simples. No caso acima é:

16ea466c1e691928a540952010719bd25396b0f627c63d20b4cb3da555903757e2872c642ad141d8

Busque e cole no arquivo: /opt/redmine-2.6.0/config/configuration.yml

De forma que fique assim:

# If you have a load-balancing Redmine cluster, you have to use the
# same secret token on each machine.
secret_token: ’16ea466c1e691928a540952010719bd25396b0f627c63d20b4cb3da555903757e2872c642ad141d8′

 

CONFIGURAÇÕES FINAIS

 

Preparando a base de dados para o Redmine.

Se você quiser migrar de uma base de dados antiga, pode importar pelo mysql dump:

$ mysql -u root -p redmine_default < arquivo.sql

Onde arquivo.sql contém o sql dump feito anteriormente por você com o comando mysqldump.

Agora vamos preparar e povoar a base de dados do Redmine:

$ su
# cd /opt/redmine-2.6.0
# chmod 666 -R log/production.log
# RAILS_ENV=production rake db:migrate
# RAILS_ENV=production rake redmine:load_default_data

PHPMYADMIN, OPCIONAL PORÉM MUITO ÚTIL

Para ver se a tabela redmine_default está devidamente povoada você pode instalar o phpmyadmin:

# apt-get install phpmyadmin
# ln -s /usr/share/phpmyadmin /var/www

CONFIGURANDO O APACHE PARA VER O REDMINE

Crie ou edite o arquivo abaixo:

# nano /etc/apache2/sites-available/redmine

Copie de forma que fique assim:

RailsBaseURI /redmine
PassengerUserSwitching on
PassengerUser www-data
PassengerGroup www-data

Habilitando o Vhost para o redmine:

# a2ensite redmine

Reinicializando o serviço do Apache:

# /etc/init.d/apache2 restart

Rolar para cima