Hay tres razones típicas por las que rails puede no partir al inicio.

1) El servidor ya está corriendo

Este error parte así:

A server is already running. Check /Users/gonzalosanchez/Proyectos/desafiolatam/tmp/pids/server.pid.
Exiting

Si hay otro servidor corriendo en ese puerto podemos cerrarlo con ctrl + c o abrir el nuevo servidor en un nuevo puerto con rails s -p 3001, Webrick (el servidor por defecto de rails) no es un proceso pesado, pero si un servidor no lo estamos ocupando podemos cerrarlo sin problemas.

Este error también podríamos tenerlo y no tener ningún servidor de rails corriendo, en ese caso podemos borrar este archivo con:

rm /Users/gonzalosanchez/Proyectos/desafiolatam/tmp/pids/server.pid

2) Hay un servidor corriendo en el puerto pero no muestra mensaje de error, al abrir localhost:3000 obtenemos una página blanca vacía.

En este caso tenemos que encontrar el identificador del proceso y matarlo.

Identificamos los procesos con lsof -i:3000

obtendremos algo como:

ruby    12344 gonzalosanchez   11u  IPv6 0x4881f166af206053      0t0  TCP localhost:hbci (LISTEN)

ruby    12353 gonzalosanchez   11u  IPv6 0x4881f166af206053      0t0  TCP localhost:hbci (LISTEN)

ruby    12354 gonzalosanchez   11u  IPv6 0x4881f166af206053      0t0  TCP localhost:hbci (LISTEN)

y ahí tenemos que hacer un kill -9 por cada elemento de la lista

kill -9 12344

3) Error de código

Hay algunos errores en el código que pueden botar el servidor, son poco comunes pero pasan, en ese caso no hay ninguna forma universal de resolverlo, hay que buscar en los logs, ver donde se produjo el error y arreglarlo.

Este es uno de los errores típicos al trabajar con Ruby on Rails, como muchos otros que de seguro te encontrarás en el camino. Lo importante es tener paciencia y ser tolerante a la frustración, ya que en especial en la programación de los errores se aprende.

Share Button

Director de DesafíoLatam. Ingeniero Civil Informático de la Universidad Federico Santa María. Emprendedor lean, dedicado al desarrollo de una mejor web con ruby on rails. Fanático de los números y las métricas, la música y la fotografía.