Instalacion VPS

Gustavo Beathyate edited this page May 8, 2014 · 11 revisions

Casi complemente robado de https://gorails.com/setup/ubuntu/14.04

0. Creación del VPS

Pendiente (por ahora imagen Ubuntu 14.04 Certified en Joyent)

En este punto ya debes tener un usuario con permisos ejecutar sudo.

Cuando aparecen cosas como <usuario-db> es porque debes reemplazarlas con valores que tu quieras usar. Esta es la lista completa:

  • <hostname>
  • <usuario-db>
  • <clave-db>
  • <nombre-db>

Entra al VPS por SSH (asumiendo ubuntu como nombre de usuario):

ssh ubuntu@<hostname>

1. Actualiza el sistema

sudo apt-get update
sudo apt-get upgrade

2. Instala las dependencias

Generales:

sudo apt-get -y install git-core curl build-essential

Ruby:

sudo apt-get -y install zlib1g-dev libssl-dev libreadline-dev libyaml-dev libxml2-dev libxslt1-dev

Nginx:

sudo apt-get -y install libcurl4-openssl-dev

Postgres:

sudo apt-get install postgresql postgresql-contrib libpq-dev

3. Instala node.js

Para poder procesar el asset pipeline.

sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs

4. Instala y configura rbenv y ruby-build

git clone git://github.com/sstephenson/rbenv.git .rbenv
git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
exec $SHELL

5. Instala Ruby 2.1.1

En este caso hay un conflicto entre Readline 6.3 y Ruby 2.1.1, por lo general no se necesita poner nada antes de rbenv. Esto se va a solucionar cuando salga Ruby 2.1.2.

curl -fsSL https://gist.github.com/mislav/a18b9d7f0dc5b9efc162.txt | rbenv install --patch 2.1.1
rbenv global 2.1.1
ruby -v

El resultado de ese comando debería ser (puede variar un poco dependiendo de tu VPS):

ruby 2.1.1p76 (2014-02-24 revision 45161) [x86_64-linux]

Luego ejecuta esto para que no se genere la documentación de las gemas:

echo "gem: --no-ri --no-rdoc" > ~/.gemrc

5. Instala Passenger

gem install passenger
rbenv rehash

6. Instala Nginx via passenger

Esto se tiene que hacer como root, por eso los pasos adicionales, y además hay una cosa que hay que tener en cuenta. En la parte que dice passenger-4.0.42, debe coincidir con la versión de passenger que tienes instalada. Para saber cual es puedes ejecutar:

passenger -v

Teniendo eso en cuenta, ejecuta estos comandos:

export ORIG_PATH="$PATH"
sudo -s -E
export PATH="$ORIG_PATH"
/home/ubuntu/.rbenv/versions/2.1.1/bin/ruby /home/ubuntu/.rbenv/versions/2.1.1/lib/ruby/gems/2.1.0/gems/passenger-4.0.42/bin/passenger-install-nginx-module

Sigue las instrucciones, aceptando los defaults (presionando enter en las preguntas).

El exit del final es para dejar de ser root.

exit