Instalando gerenciador de projetos Redmine usando o PostgreSQL sobre o nginx

Este tutorial mostrará como instalar o gerenciador de projetos Redmine 1.3.0 no Debian Squeeze (6.0.3), com o PostgreSQL 9.1.2 e usando o servidor WEB nginx 1.0.11 com o módulo Passenger (mod_rails).

[ Hits: 12.848 ]

Por: Marcelo Soares Souza em 14/01/2012 | Blog: https://gitlab.com/marcelo-soares-souza


Instalando o gerenciador de projetos Redmine usando o PostgreSQL sobre o nginx



Este tutorial mostrará como instalar o Gerenciador de Projetos Redmine 1.3.0 no Debian Squeeze (6.0.3), com o PostgreSQL 9.1.2 e usando o servidor web nginx 1.0.11 com o módulo Passenger (mod_rails).

Para realizar este tutorial, esteja logado como 'root'.

Instalando o PostgreSQL 9.1.2

1) Primeiro vamos instalar (compilar) o PostgreSQL 9.1.2, para isto edite o arquivo "sources.list":

# nano /etc/apt/sources.list

2) Acrescente as seguintes linhas e salve:

deb http://ftp.br.debian.org/debian squeeze main contrib
deb-src http://ftp.br.debian.org/debian squeeze main contrib


3) Atualize a base de pacotes local:

# apt-get update

4) Instale as dependências de compilação do PostgreSQL:

# apt-get build-dep postgresql
# apt-get install libreadline6-dev


5) Baixe o código-fonte do PostgreSQL 9.1.2 e descompacte-o (lembre-se de instalar o pacote do 'bzip2', caso não esteja instalado: # apt-get install bzip2)

wget -c http://ftp.postgresql.org/pub/source/v9.1.2/postgresql-9.1.2.tar.bz2
tar xvf postgresql-9.1.2.tar.bz2

6) Configure e compile o PostgreSQL:

cd postgresql-9.1.2/
$ ./configure --prefix=/opt/postgresql-9.1.2
$ make
# make install


7) Crie o usuário postgres:

# adduser postgres (coloque qualquer senha)

8) Iniciando o Banco de dados inicial do PostgreSQL:

# chown postgres.postgres /opt/postgresql-9.1.2/ -R
$ su - postgres
# cd /opt/postgresql-9.1.2/
# mkdir /opt/postgresql-9.1.2/data
# /opt/postgresql-9.1.2/bin/initdb -D /opt/postgresql-9.1.2/data/


9) Configurando o PostgreSQL para acesso pela rede:

# nano /opt/postgresql-9.1.2/data/postgresql.conf

- Descomente a linha 59:

listen_addresses = 'localhost'


10) Iniciando o PostgreSQL:

# /opt/postgresql-9.1.2/bin/postmaster -D /opt/postgresql-9.1.2/data/ &

11) Testando o PostgreSQL:

# /opt/postgresql-9.1.2/bin/psql -U postgres -h localhost

Obs.: Para sair da linha de comando do 'psql', use o comando: \q.

Instalando o nginx 1.0.11 com o Passenger (mod_rails)

1) Instalando dependências de compilação do nginx:

# apt-get build-dep nginx

2) Instalando Ruby, RubyGems, Rake e libcurl3 para instalação do Passenger (mod_rails):

# apt-get install ruby rubygems rake libcurl3 libcurl4-openssl-dev

3) Instalando Passenger:

# gem install passenger

4) Baixando, descompactando e configurando o nginx 1.0.11:

wget -c http://nginx.org/download/nginx-1.0.11.tar.gz
$ tar xvf nginx-1.0.11.tar.gz
$ cd nginx-1.0.11
$ ./configure --sbin-path=/usr/sbin --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --pid-path=/var/run/nginx.pid --lock- path=/var/lock/nginx.lock --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/var/lib/nginx/body --http-proxy-temp-path=/var/lib/nginx/proxy --http- fastcgi-temp-path=/var/lib/nginx/fastcgi --with-debug --with-http_stub_status_module --with-http_flv_module --with-http_ssl_module --with-http_dav_module --with-ipv6 --add-module=/var/lib/gems/1.8/gems/passenger-3.0.11/ext/nginx --with-poll_module --with-pcre --with-http_gzip_static_module
$ make
# make install


5) Testando o nginx:

# mkdir -p /var/lib/nginx/body
# chown www-data.www-data /var/lib/nginx/ -R
# nginx


- Acesse o endereço: http://localhost (ou: http://127.0.0.1) no navegador, deve aparecer a mensagem:

Welcome to nginx!

Instalando o Redmine 1.3.0

1) Instalando dependências Ruby on Rails para Redmine:

# gem install rails -v=2.3.14
# gem install rack -v=1.1.1
# gem install i18n -v=0.4.2
# gem install postgres-pr


2) Criando Banco de Dados do Redmine no PostgreSQL:

- Entrar no Console do PostgreSQL:

# /opt/postgresql-9.1.2/bin/psql -U postgres -h 127.0.0.1
postgres=# CREATE ROLE redmine LOGIN ENCRYPTED PASSWORD 'minha_senha_secreta' NOINHERIT VALID UNTIL 'infinity';
postgres=# CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine;

Obs.: Para sair da linha de comando do 'psql' use o comando: \q.

3) Baixando, descompactando e configurando o Redmine 1.3.0:

wget -c http://rubyforge.org/frs/download.php/75597/redmine-1.3.0.tar.gz
# tar xvf redmine-1.3.0.tar.gz -C /opt/

4) Configurando o Redmine:

# cd /opt/redmine-1.3.0
# nano /opt/redmine-1.3.0/config/database.yml


- Colocar no "database.yml":

production:
adapter: postgresql
database: redmine
host: localhost
username: redmine
password: minha_senha_secreta
encoding: utf8


# rake generate_session_store
# RAILS_ENV=production rake db:migrate
# RAILS_ENV=production rake redmine:load_default_data
(escolher pt-BR)
# chown www-data.www-data /opt/redmine-1.3.0/ -R
# chmod -R 755 /opt/redmine-1.3.0/files /opt/redmine-1.3.0/log /opt/redmine-1.3.0/tmp /opt/redmine-1.3.0/public/plugin_assets


Configurando o nginx para acessar o Redmine através do Passenger

# nano /etc/nginx/nginx.conf

- Adicione após http:

    {

    passenger_root /var/lib/gems/1.8/gems/passenger-3.0.11;
    passenger_max_pool_size 4;
    passenger_max_instances_per_app 1;
    passenger_pool_idle_time 3600;

    server {
        listen       80;
        server_name  localhost;

        passenger_enabled on;
        rails_env production;

        root /opt/redmine-1.3.0/public;

        error_page   500 502 503 504  /50x.html;
        location = /50x.html { root   html; }
    }


Inicie ou reinicie (killall -HUP nginx) o nginx.

Acesse o endereço: http://localhost com o navegador.

O usuário administrador inicial: admin, com senha: admin.

Previamente publicado em:

   

Páginas do artigo
   1. Instalando o gerenciador de projetos Redmine usando o PostgreSQL sobre o nginx
Outros artigos deste autor

Diaspora* no Debian Wheezy - Rede social livre e distribuída

Mapa da Cultura no Debian 7.0 - Instalação com Nginx usando Phusion Passenger

Servidor web nginx com PHP-FPM e memcached

Controle de versão usando Git integrado ao Redmine

OpenLDAP: Instalando um servidor de diretórios com replicação (SyncRepl)

Leitura recomendada

Facilidades com Debian 4.0 Etch

Instalação do winmodem HSP56 Pctel no Slackware

Ubuntu-Tweak: Como instalar (Ubuntu Hardy Heron)

Fluxbox: Unleashead - iDesk + aDesklets + Gkrellm + Eterm

Webacula - Instalação e Configuração no Ubuntu 10.04

  
Comentários
[1] Comentário enviado por leandruco em 17/01/2012 - 09:03h

Bom dia,
Estou encontrando o seguinte problema, quando dou o comando gem install passenger me retorna o seguinte erro:
ERROR: could not find gem passenger locally or in a repository

O que pode ser?

EDIT

Estou usando o debian Lenny

[2] Comentário enviado por R.S.P Andre em 19/01/2012 - 15:46h

se alguém estiver com problema na hora de compilar o nginx é só juntar essa parte aqui "--lock- path=/var/lock/nginx.lock" deixando-a assim "--lock-path=/var/lock/nginx.lock"..

Muito bom o artigo.. gostei

[3] Comentário enviado por bdsr em 31/05/2012 - 09:49h

Correção no comando para compilar o nginx:

./configure --sbin-path=/usr/sbin --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --pid-path=/var/run/nginx.pid --lock-path=/var/lock/nginx.lock --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/var/lib/nginx/body --http-proxy-temp-path=/var/lib/nginx/proxy --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --with-debug --with-http_stub_status_module --with-http_flv_module --with-http_ssl_module --with-http_dav_module --with-ipv6 --add-module=/var/lib/gems/1.8/gems/passenger-3.0.11/ext/nginx --with-poll_module --with-pcre --with-http_gzip_static_module

Att.


Contribuir com comentário