Phusion Passenger 4.0 no Nginx - Instalando e testando no Debian Wheezy

Publicado por Marcelo Soares Souza em 29/10/2012

[ Hits: 6.142 ]

Blog: https://mapadaagroecologia.org/

 


Phusion Passenger 4.0 no Nginx - Instalando e testando no Debian Wheezy



Este tutorial mostrará como instalar o módulo para implantação (deploy) de aplicativos Web Ruby (Rails) e Python (Django): Passenger Phusion 4.0 (beta) usando o Ruby 1.9.3.194, sobre o servidor Web de alta performance Nginx (1.3.7) no GNU/Linux Debian Wheezy 7.0 (beta 3); para testar, criaremos um pequeno aplicativo Ruby on Rails (3.2.8).

1. Primeiro, vamos instalar as dependências para compilação do nginx e Phusion Passenger. Como administrador do sistema (root), faça:

# nano /etc/apt/sources.list

2. Acrescente as seguintes linhas no final do arquivo, salve (CTRL + O) e saia do Nano (CTRL + X):

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

3. Atualize a base de pacotes local:

# apt-get update

4. Instale as dependências de compilação do nginx e do Phusion Passenger:

# apt-get build-dep nginx -y
# apt-get install ruby-passenger -y
# apt-get install git -y


Instalando o Phusion Passenger 4.0 beta

1. Baixe o código-fonte do Phusion Passenger do Git (repositório de códigos-fonte):

# git clone https://github.com/FooBarWidget/passenger.git

2. Configurando, compilando e criando o pacote gem do Phusion Passenger:

# cd passenger
# rake package


3. Instale a gem do Phusion Passenger:

# gem instal pkg/passenger-3.9.1.beta.gem

Obs.: Verificar o nome criado da gem listando o diretório PKG:

# ls -l pkg/

Instalando o nginx com suporte ao Phusion Passenger

1. Baixe o código-fonte do nginx e descompacte:

# cd ~
# wget -c
http://nginx.org/download/nginx- 1.3.7.tar.gz
# tar xvf nginx-1.3.7.tar.gz

Obs.: Lembre-se de instalar o pacote do "bzip2". Caso não esteja instalado:

# apt-get install bzip2

2. Configure e compile o nginx:

# cd nginx-1.3.7

# ./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 --with-poll_module --with-pcre --with-http_gzip_static_module --add-module=/var/lib/gems/1.9.1/gems/passenger-3.9.1.beta/ext/nginx

# make
# make install


Criando uma aplicação de teste em Ruby on Rails

1. Instalando o Ruby on Rails:

# gem install rails

2. Criando um aplicativo em Ruby on Rails:

# cd /var/www
# rails new helloworld
# cd /var/www/helloworld
# bundle install


Configurando o nginx

1. Apague a configuração antiga do "nginx.conf":

# rm /etc/nginx/nginx.conf

2. Crie/edite um novo arquivo de configuração:

# nano /etc/nginx/nginx.conf

3. Acrescente ao "nginx.conf":

user www-data;
worker_processes 1;

events { worker_connections256; }

http {
include mime.types;
default_typeapplication/octet-stream;
sendfileon;
keepalive_timeout 90;

passenger_root /var/lib/gems/1.9.1/gems/passenger-3.9.1.beta/;

server {
listen 80;
server_namelocalhost;

passenger_enabled on;
rails_env development;

root /var/www/helloworld/public;

error_log/var/log/nginx/localhost.error.log;
access_log /var/log/nginx/localhost.access.log;

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

Iniciando o servidor web nginx e testando a aplicação em Ruby on Rails

1. Pare o serviço Apache 2:

# service apache2 stop

2. Crie o diretório /var/lib/nginx/body:

# mkdir -p /var/lib/nginx/body

3. Inicie o nginx:

# nginx

4. Visite o endereço do seu servidor usando um navegador Web: http://SEU_ENDEREÇO_IP_OU_HOSTNAME

Caso obtenha sucesso, uma página Web aparecerá com os dizeres:
Welcome aboard. You’re riding Ruby on Rails!

Publicado originalmente em:
Outras dicas deste autor

Instalando Friendica no Debian 7.0 Wheezy - Rede social livre e distribuída

Instalando o Noosfero no Debian 7.0 (Wheezy) com Nginx e Phushion Passenger

Leitura recomendada

Configurando interface de rede em servidores Red Hat e CentOS 7

Compilar kernel Linux 2.6.36 no Debian Squeeze

Reconfiguração da home do usuário ao iniciar

Gerenciando log do Oracle através do Linux com Logrotate

OpenSUSE Education Li-f-e 11.3 - Excelente distribuição para uso educacional, técnico e científico

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts