Gem in a box is a simple sinatra app to allow you to host your own in-house gems.
It has no security, or authentication so you should handle this yourself.
gem install geminabox
Create a config.ru as follows:
require "rubygems"
require "geminabox"
Geminabox.data = "/var/geminabox-data" # …or wherever
run Geminabox
And finally, hook up the config.ru as you normally would (passenger, thin, unicorn, whatever floats your boat).
gem install geminabox
gem inabox pkg/my-awesome-gem-1.0.gem
Simples!