If all the apps share same ruby version and same gem setup, I'd rather run all the apps one by one independently when it's needed, mayby shielded by pound reverse proxy (for hiding various ports behind various url prefixes).
If you need isolate environments, take a look at docker https://www.docker.io/ which provides lightweight and lightning-fast application containers.