Este tutorial mostrara 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) Preparando o Ambiente
1.1) Primeiro vamos instalar as dependências para compilação do Nginx e Passenger Phusion. Como administrador do sistema (root)
nano /etc/apt/sources.list
1.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
1.3) Atualize a base de pacotes local
apt-get update
1.4) Instale as dependências de compilação do Nginx e do Passenger Phusion
apt-get build-dep nginx -y
apt-get install ruby-passenger -y
apt-get install git -y
2) Instalando o Phusion Passenger 4.0 beta
2.1) Baixe o código-fonte do Passenger Phusion do Git (Repositório de Código-Fonte)
git clone https://github.com/FooBarWidget/passenger.git
2.2) Configurando, Compilando e criando o pacote Gem do Phusion Passenger
cd passenger
rake package
2.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/)
3) Instalando o Nginx com suporte ao Phusion Passenger
3.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
3.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
4) Criando uma Aplicação de Teste em Ruby on Rails
4.1) Instalando o Ruby on Rails
gem install rails
4.2) Criando um aplicativo em Ruby on Rails
cd /var/www
rails new helloworld
cd /var/www/helloworld
bundle install
4.3) Configurando o Nginx
Apague a configuração antiga do nginx.conf
rm /etc/nginx/nginx.conf
Crie/Edite um novo arquivo de configuração
nano /etc/nginx/nginx.conf
Acrescente ao nginx.conf
user www-data;
worker_processes 1;
events { worker_connections 256; }
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 90;
passenger_root /var/lib/gems/1.9.1/gems/passenger-3.9.1.beta/;
server {
listen 80;
server_name localhost;
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; }
}
}
4.4) Iniciando o Servidor Web Nginx e testando a aplicação em Ruby on Rails
Pare o serviço Apache2
service apache2 stop
Crie o diretório /var/lib/nginx/body
mkdir -p /var/lib/nginx/body
Inicie o Nginx
nginx
4.5) 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 aparecera com os dizeres: "Welcome aboard. You’re riding Ruby on Rails!"
Tutorial Instalando e testando o Phushion Passenger 4.0 no Nginx sobre o Debian Wheezy
25 de Outubro de 2012, 0:00 - | Ninguém está seguindo este artigo ainda.
Visualizado 547 vezes