2010-07-22 41 views
20

Escribo una aplicación de Ruby on Rails que normalmente se ejecuta en Heroku o en un Linux Box, pero también tendría que implementarla en un servidor de Windows.Ruby on Rails en IIS?

El servidor es un servidor Win2008 de 64 bits con IIS 7.0 instalado, por lo que normalmente preferiría usar IIS en lugar de configurar un Apache al lado.

¿No sé si Ruby/Rails funciona con IIS? ¿Las gemas funcionan? ¿Es un problema de 64 bits?

Estoy pensando en usar Ruby 1.9.1 y Rails 2.3.

Respuesta

12

te debe gustar el dolor porque este despliegue te va a doler. No sé si esta es una solución para ti, pero en mi antiguo trabajo estábamos implementando aplicaciones web en Windows tabletas (más de 200 de ellas) y decidimos usar la casilla virtual e implementar la aplicación en la vm. Una de nuestras aplicaciones antiguas en las tabletas de PC que implementamos en Windows sin iis, solo usamos ruby ​​y rubygems con mongrel como servidor de aplicaciones y mysql como base de datos, pero no fue agradable.

+10

que en realidad es una idea interesante: Instalar servidor Hyper-V y ejecutar algunas de Linux en el mismo. Lo tendré en cuenta como una idea. (PD: soy un desarrollador de SharePoint, así que no me gusta el dolor, lo estoy buscando activamente ...) –

+0

déjame saber si quieres ir por esa ruta, ya sea que yo o mi antiguo jefe probablemente podamos para darte algunos consejos. Creo que nos topamos con algunos problemas de licencia utilizando la versión compilada de la caja virtual, por lo que tuvimos que compilarla desde la fuente, lo cual no fue un proceso simple (creo que intentan mantenerlo así). –

2

Puede implementar Rails en IIS, es muy difícil y no hay mucha documentación. Usted necesitará una aplicación Fast-CGI especial: http://roriis.codeplex.com/

también información aquí: http://mvolo.com/blogs/serverside/archive/2007/02/18/10-steps-to-get-Ruby-on-Rails-running-on-Windows-with-IIS-FastCGI.aspx

rieles bajo Apache en Windows es un poco más fácil, pero el mayor inconveniente de una implementación de Windows es que se puede' t use Capistrano para automatizar implementaciones. Las gemas funcionan en Windows. Toda mi experiencia es de 32 bits, podría haber un problema relacionado con 64 bits, pero lo dudo.

17

Para instalar Ruby on Rails para IIS 7 64 bits Windows 2008 Server por favor utilice Helicon Zoo

+3

Esto tiene una desventaja: si ya ha instalado y ajustado una copia de Ruby, no sugerirá usarla, pero instalará otra y, además, pondrá un nuevo Ruby en PATH que romperá la instalación anterior. Una cosa más: Helicon Zoo puede instalar RoR, pero no puede desinstalarlo, tendrás que hacerlo manualmente. – Paul

+0

Sí, especialmente para SQL-Server, necesita una versión anterior específica de Ruby, o no compilará ... –

0

Para el trabajo en ventanas con RoR hago esto:

1. Install Ruby and RoR 
2. Install NginX (balancing for each thin server launched) 
3. Install Thin Server 
4. Create a service (on Ruby code) that run each thin server process with each affinity process (cpu0/cpu1...) for example if have a DualCore CPU it will launch 2 Thin Server (different port between those) and set affinity for each one (using PID). 
5. Set a windows user with permission to do run that service (like a IIS pool and isolated process concept) 

Mi aplicación está trabajando más de un año continuo y no tiene ningún problema con eso y estoy feliz.