domingo, octubre 08 2006 @ 08:26 ART | Actualmenteestoy desarrollando una aplicación web con Ruby on Rails para el grupode investigación en el cual trabajo. Estoy usando la base datosPostgreSQL, el RCS (Revision Control System) Subversion y el servidorHTTP Mongrel. Todo bajo Ubuntu Dapper, aunque en el servidor del grupousamos Debian Sarge.
Aquí publico para referencia futura la instalación y configuración delas principales aplicaciones que uso para el desarrollo de laaplicación con Ubuntu Dapper, aunque hay cosas que aplican a cualquierdistribución de Linux.
1.Instalamos el paquete básico para compilar aplicaciones enDebian/Ubuntu, la librería libreadline5-dev requerida para compilarRuby con el shell interactivo (IRB) y la librería zlib1g-dev que esrequerida por el administrador de paquetes (gems) de Ruby, RubyGems. sudo apt-get install build-essential libreadline5-dev zlib1g-dev
2. Ahora vamos a instalar la base de datos PostgreSQL 8 sudo apt-get install postgresql-8.0
3. Luego asignamos una constraseña al superusuario ‘postgres’: sudo passwd postgres
3. Configuramos la forma de autenticación para conectarnos a la base dedatos. Esto, en PostgreSQL, se hace editando el archivo/etc/postgresql/8.0/main/pg_hba.conf y nos aseguramos de que esténpresentes las siguientes líneas: local all postgres ident sameuser local all all md5 sameuser host all all 127.0.0.1 255.0.0.0 md5 sameuser host all all 0.0.0.0 0.0.0.0 reject
Esta configuración nos permite conectarnos a la base de datos como elsuperusuario ‘posgres’ sólo cuando estemoslogueados como tal en el sistema, y permite conexiones locales por Unixsockets y por TCP/IP siempre y cuando intentemos conectarnos a una basede datos con el mismo nombre de usuario. Es decir, que para acceder auna base de datos llamada ‘mydatabase’ debemoscrear un usuario ‘mydatabase’ con el passwordcorrespondiente.
Para que los cambios surtan efecto debemos reiniciar el servicio de PostgreSQL sudo /etc/init.d/postgresql restart
4. Instación de Ruby 1.8.4 desde las fuentes wget http://rubyforge.org/frs/download.php/7858/ruby-1.8.4.tar.gz tar xvfz ruby-1.8.4.tar.gz cd ruby-1.8.4 ./configure --prefix=/usr/local/ruby-1.8.4 make sudo make install sudo make install-doc ln -s /usr/local/ruby-1.8.4 /usr/local/ruby-site
De esta forma podremos tener a la vez varias versiones de Rubycompiladas en nuestro sistema en /usr/local/ruby-VERSION y cambiar laque deseemos usar modificando el enlace simbólico /usr/local/ruby-site
Para que el ejecutable de Ruby esté disponible en el PATH para todoslos usuarios del sistema agregamos la siguiente línea al archivo/etc/bash.bashrc export PATH=/usr/local/ruby-site/bin:$PATH
5. Instalar Rubygems (ultima versión 0.9.0 al momento de escribir esta entrada). Descargar las fuentes y luego: tar xvfz rubygems-0.9.0.tar.gz cd rubygems-0.9.0 ruby setup.rb config --prefix=/usr/local/ruby-site ruby setup.rb setup ruby setup.rb install
6. Instalar rails, mongrel, postgres-pr, a través del gestor de paquetes rubygems sudo gem install rails --include-dependencies sudo gem install mongrel --include-dependencies sudo gem install postgres-pr --include-dependencies
7. Crear la base de datos para la aplicación de Rails su - postgres createuser -P project_name createdb -U projectname projectname
8. Crear un script para iniciar Mongrel al inicio del sistema. Copiar las siguientes líneas en /etc/init.d/mongrel_projectname #!/bin/bash # description: Startup script for mongrel
PATH=/usr/local/ruby-site/bin/:$PATH BASEDIR=path_to_your_web_app case "$1" in start) echo "starting up mongrel in $BASEDIR" cd $BASEDIR mongrel_rails start -d >> /var/log/messages 2>&1 & ;; stop) echo "stopping mongrel" cd $BASEDIR mongrel_rails stop ;; restart) echo "restarting mongrel" cd $BASEDIR mongrel_rails stop sleep 3 mongrel_rails start -d >> /var/log/messages 2>&1 & ;; esac
Y adicionar el script a la secuencia de inicio: chmod u+x /etc/init.d/mongrel_projectname update-rc.d mongrel_projectname defaults /etc/init.d/mongrel_projectname start
9. Instalar PhpPgAdmin para administrar las bases de datos con interfaz web. sudo apt-get install phppgadmin sudo ln -s /etc/phppgadmin/apache.conf /etc/apache2/sites-enabled/phppgadmin sudo /etc/init.d/apache2 restart
10. Por último un enlace (http://www.radrails.org/blog/2006/9/18/installing-radrails-on-ubuntu-dapper) a un excelente tutorial para instalar el IDE RadRails. | |