Rails, Git, MySQL e mod_rails no Leopard

Comprou um Mac? Não sabe por onde começar? Esse é um mega-post mostrando como configurar Ruby on Rails, Git, MySQL e mod_rails no Leopard. É tudo muito-fácil!

Ruby on Rails

O Leopard já vem com Ruby e Rails já instalados. Então, a única sugestão é a de atualizar todos os gems. O comando gem list deve apontar os gems instalados. Por padrão, são:

actionmailer (1.3.6, 1.3.3)
actionpack (1.13.6, 1.13.3)
actionwebservice (1.2.6, 1.2.3)
activerecord (1.15.6, 1.15.3)
activesupport (1.4.4, 1.4.2)
acts_as_ferret (0.4.1)
capistrano (2.0.0)
cgi_multipart_eof_fix (2.2)
daemons (1.0.7)
dnssd (0.6.0)
fastthread (1.0)
fcgi (0.8.7)
ferret (0.11.4)
gem_plugin (0.2.2)
highline (1.2.9)
hpricot (0.6)
libxml-ruby (0.3.8.4)
mongrel (1.0.1)
needle (1.3.0)
net-sftp (1.1.0)
net-ssh (1.1.2)
rails (1.2.6, 1.2.3)
rake (0.7.3)
RedCloth (3.0.4)
ruby-openid (1.1.4)
ruby-yadis (0.3.4)
rubynode (0.1.3)
sources (0.0.1)
sqlite3-ruby (1.2.1)
termios (0.9.4)

Observa-se que o Mac OS vem com Rails 1.2.6 e 1.2.3. Para garantir tudo atualizado, é interessante usar o flag update, do comando gem e instalar o Rails, caso sua versão seja diferente da última versão corrente.

sudo gem update --system
sudo gem install rails

Após atualizar o sistema e executar gem list, tem-se:

actionmailer (2.0.2, 1.3.6, 1.3.3)
actionpack (2.0.2, 1.13.6, 1.13.3)
actionwebservice (1.2.6, 1.2.3)
activerecord (2.0.2, 1.15.6, 1.15.3)
activeresource (2.0.2)
activesupport (2.0.2, 1.4.4, 1.4.2)
acts_as_ferret (0.4.1)
capistrano (2.0.0)
cgi_multipart_eof_fix (2.2)
daemons (1.0.7)
dnssd (0.6.0)
fastthread (1.0.1, 1.0)
fcgi (0.8.7)
ferret (0.11.4)
gem_plugin (0.2.2)
highline (1.2.9)
hpricot (0.6)
libxml-ruby (0.3.8.4)
mongrel (1.0.1)
needle (1.3.0)
net-sftp (1.1.0)
net-ssh (1.1.2)
passenger (1.0.5)
rails (2.0.2, 1.2.6, 1.2.3)
rake (0.8.1, 0.7.3)
RedCloth (3.0.4)
ruby-openid (1.1.4)
ruby-yadis (0.3.4)
rubygems-update (1.1.1)
rubynode (0.1.3)
sources (0.0.1)
sqlite3-ruby (1.2.1)
termios (0.9.4)

Git

O suporte ao Git não é bicho de sete cabeças. São duas as formas de instalar: via GUI ou via shell. A instalação via GUI é idêntica as demais instalações de aplicativos do Mac, além de ser mais rápida do que a instalação via shell. Basta fazer o download do pacote e apertar ‘next’, ‘next’, ‘finish’. Para instalação via shell é necessário compilar o GIT e outras coisinhas mais.

MySQL

Para o MySQL, também existem duas formas de instalação: via GUI e através da compilação dos binários, via Shell. Via Gui basta copiar o pacote do site e instalar como qualquer outra aplicação do Mac OS. Para compilação, o melhor é seguir esse artigo do Hivelogic.

mod_rails (Passenger)

A instalação ao Passenger é bem menos complicado do que as antigas formas de se trabalhar com Rails. Inicialmente, copie o gem passenger e execute o instalador:

sudo gem install passenger
sudo passenger-install-apache2-module

O instalador é simples e não há configurações a serem feitas. Agora, é necessário alterar o arquivo de configuração do Apache para carregar o suporte a Rails. Abra o arquivo /etc/apache2/httpd.conf e adicione as seguintes linhas no final do arquivo:


LoadModule passenger_module /opt/local/lib/ruby/gems/1.8/gems/passenger-1.0.1/ext/apache2/mod_passenger.so
RailsSpawnServer /opt/local/lib/ruby/gems/1.8/gems/passenger-1.0.1/bin/passenger-spawn-server
RailsRuby /opt/local/bin/ruby

Além disso, é necessário informar, nesse arquivo, as configurações de sua aplicação

<directory "/Users/leonardofaria/Sites/test/public">
    Order allow,deny
    Allow from all
</directory>
 
<virtualhost *>
    ServerName localhost
    DocumentRoot /Users/leonardofaria/Sites/test/public
</virtualhost>

Feita todas as alterações, é hora de reiniciar o Apache. Você pode fazer isso via Preferências do Sistema > Compartilhamento, ou pelo shell:

 sudo apachectl start 

Notas

Fontes

 

Leonardo

Registros de Leonardo Faria sobre desenvolvimento web

 
  • Muito bom o post, só acho que faltou explicar como atualizar o apache e o ruby.
    Por acaso esses tem sido meu problemas rs…

    Abs e bom e bonito o blog.

  • 1 campeão mundial de clubes fifa 2000
    2 pequena taça do mundo 1953
    3 tetracampeão brasileiro 90 98 99 2005
    4 bicampeão copa do brasil 95 2002
    5 supercopa do brasil 1991
    6 campeão estadual 25 vezes
    7 rio sp 50 53 54 66 2002
    a algum outro time q o locutor fala timão alem do corinthians ?

  • pro corinthians não se torce …
    pro corinthians se vive !!! e é isso q nos diferencia