# RoR deployment and maintenance

**URL:** <https://www.ruby-forum.com/t/ror-deployment-and-maintenance/155944>\
**Category:** Rails\
**Created:** [December 18, 2008, 11:47am UTC](https://www.ruby-forum.com/t/ror-deployment-and-maintenance/155944 "2008-12-18T11:47:07Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![krishna](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/71c47a/32.png) [@krishna](https://www.ruby-forum.com/u/krishna)\
**Post date:** [December 18, 2008, 11:47am UTC](https://www.ruby-forum.com/t/ror-deployment-and-maintenance/155944/1 "2008-12-18T11:47:07Z")

</div>

Hi,  
I have a developed and working RoR prototype. So far its been  
mostly in development mode environment and under script/server on  
windows .I want to move it to a hosting server and continue  
development.

Whats the best option? - How good is Ubuntu 7? I tried that first as I  
have experience on that.I have been able to configure and get my app  
running but looking for tips on maintaining the setup and continuing  
development.

Also what are the best practices for deployment…I just find myself  
doing development on my box and manually ftp-ing the changed  
files.Ideally I want to set up some kind of script / source control  
where if i can check in stuff to my hosting server (except for config  
details ) after changes are done and I am done testing…

Is there some source that can help me out

vk.

---

<div class="post-metadata">

**Author:** ![krishna](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/71c47a/32.png) [@krishna](https://www.ruby-forum.com/u/krishna)\
**Post date:** [December 18, 2008, 12:21pm UTC](https://www.ruby-forum.com/t/ror-deployment-and-maintenance/155944/2 "2008-12-18T12:21:09Z")

</div>

Ubuntu is fine, but the most important for you is to choose a distro  
you are comfortable with.

An example of good pratices is to use capistrano for deployment:

> **[CapiFy | Home Page](https://www.capify.org/)**
>
> The home page for CapiFy.

You can use apache and mod\_passenger: [http://www.modrails.com/](http://www.modrails.com/) to run  
you apps on your server

---

<div class="post-metadata">

**Author:** ![krishna](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/71c47a/32.png) [@krishna](https://www.ruby-forum.com/u/krishna)\
**Post date:** [December 18, 2008, 1:19pm UTC](https://www.ruby-forum.com/t/ror-deployment-and-maintenance/155944/3 "2008-12-18T13:19:15Z")

</div>

AurÃ©lien Bottazini wrote:

> Ubuntu is fine, but the most important for you is to choose a distro  
> you are comfortable with.
> 
> An example of good pratices is to use capistrano for deployment:  
> [http://www.capify.org/](http://www.capify.org/)  
> You can use apache and mod\_passenger: [http://www.modrails.com/](http://www.modrails.com/) to run  
> you apps on your server

An even better practice is to kick capistrano out, use a good scm such  
as Mercurial, and roll your own deployment script.

I’ll have to give mod\_rails a try one day, but I am still sure that  
Nginx+Thin is the best setup.

---

<div class="post-metadata">

**Author:** ![krishna](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/71c47a/32.png) [@krishna](https://www.ruby-forum.com/u/krishna)\
**Post date:** [December 20, 2008, 8:39am UTC](https://www.ruby-forum.com/t/ror-deployment-and-maintenance/155944/4 "2008-12-20T08:39:50Z")

</div>

If you have a relatively simple site, you can use rsync with exluded  
files/directories for production deployment from your build environment.

We use Ubuntu 8.04 and run RoR with nginx and thin. They work quite  
well.

Thin has smaller footprint. We used to run mongrel\_cluster with apache2,  
that works too.

cheers,

rp8  
Krishna wrote:

> Hi,  
> I have a developed and working RoR prototype. So far its been  
> mostly in development mode environment and under script/server on  
> windows .I want to move it to a hosting server and continue  
> development.
> 
> Whats the best option? - How good is Ubuntu 7? I tried that first as I  
> have experience on that.I have been able to configure and get my app  
> running but looking for tips on maintaining the setup and continuing  
> development.
> 
> Also what are the best practices for deployment…I just find myself  
> doing development on my box and manually ftp-ing the changed  
> files.Ideally I want to set up some kind of script / source control  
> where if i can check in stuff to my hosting server (except for config  
> details ) after changes are done and I am done testing…
> 
> Is there some source that can help me out
> 
> vk.

---

<div class="post-metadata">

**Author:** ![krishna](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/71c47a/32.png) [@krishna](https://www.ruby-forum.com/u/krishna)\
**Post date:** [December 20, 2008, 7:32am UTC](https://www.ruby-forum.com/t/ror-deployment-and-maintenance/155944/5 "2008-12-20T07:32:26Z")

</div>

On Dec 18, 7:19 am, Fernando P. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:  
[…]

> An even better practice is to kick capistrano out, use a good scm such  
> as Mercurial, and roll your own deployment script.

Why is that an “even better practice”? I find Capistrano extremely  
useful, even with Git (surely a “good scm”). I have indeed rolled my  
own deployment script – in Capistrano. I don’t see that a source-  
control system has anything directly to do with deployment (unless you  
want to get clever with commit hooks the way Heroku has, but while  
that works for Heroku, I’m not convinced that that’s a particularly  
good idea in the general case).

> I’ll have to give mod\_rails a try one day, but I am still sure that  
> Nginx+Thin is the best setup.

How can you be “sure” than Nginx + Thin is better than mod\_rails if  
you haven’t even tried mod\_rails? Unlike any other Rails deployment  
option that I’m aware of, mod\_rails makes deploying Rails apps as easy  
as deploying PHP apps, and performance appears to be excellent. What  
makes Nginx and Thin so excellent?

## Best,

Marnen Laibow-Koser  
removed\_email\_address@domain.invalid  
[http://www.marnen.org](http://www.marnen.org)

---

<div class="post-metadata">

**Author:** ![krishna](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/71c47a/32.png) [@krishna](https://www.ruby-forum.com/u/krishna)\
**Post date:** [December 20, 2008, 6:17pm UTC](https://www.ruby-forum.com/t/ror-deployment-and-maintenance/155944/6 "2008-12-20T18:17:28Z")

</div>

On Dec 20, 2:39 am, rp8 Lun [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> If you have a relatively simple site, you can use rsync with exluded  
> files/directories for production deployment from your build environment.

Yes, but you might as well automate that into a Capistrano script.

> We use Ubuntu 8.04 and run RoR with nginx and thin. They work quite  
> well.
> 
> Thin has smaller footprint.

Good to know. I’ve never tried Thin.

> We used to run mongrel\_cluster with apache2,  
> that works too.

Sure. Passenger basically automates this.

> cheers,
> 
> rp8

## Best,

Marnen Laibow-Koser  
removed\_email\_address@domain.invalid  
[http://www.marnen.org](http://www.marnen.org)
