I used to pursue this same goal. Then I decided to reclaim my sanity and stopped swimming upstream. I dropped RVM in production environments and started using ruby-build to drop a Ruby in /usr/local.
When you do this you drop a ton of configuration overhead involved with custom paths to your Ruby interpreter. That doesn't sound like much, but when you're fighting with environments in login vs non-login shells, cron jobs, remotely executed Capistrano tasks, etc, it's an overhead that I'm happy to have behind me.
If one of our Ruby apps require a different Ruby version, it goes on a different VM. Sounds like overkill, but you can get a VM down to $5/month from DigitalOcean. How much time is $5/month worth?
We typically only put one app on a server, especially since Digital Ocean is so cheap. If things are tiny apps, we just stick them on a $5/mo 512mb droplet.
When you do this you drop a ton of configuration overhead involved with custom paths to your Ruby interpreter. That doesn't sound like much, but when you're fighting with environments in login vs non-login shells, cron jobs, remotely executed Capistrano tasks, etc, it's an overhead that I'm happy to have behind me.
If one of our Ruby apps require a different Ruby version, it goes on a different VM. Sounds like overkill, but you can get a VM down to $5/month from DigitalOcean. How much time is $5/month worth?