FREEDOM251

Freedom251 › Artifact repository software

Geminabox

Free plan LinuxSelf-hostedWeb

Visit Geminabox Alternatives Pricing

Geminabox's own site

What Geminabox is

Geminabox is a free, self-hosted option for teams that want to host private Ruby gems and push new ones to their own server. Bundler can find hosted gems through the compact index without client configuration. Geminabox runs as a Rack application and can be started with rackup or deployed using Rack servers such as Passenger, Puma, and Unicorn. The project also documents a Docker deployment; a mounted data volume preserves gems when a container is replaced. Clients can push gems using the standard gemcutter push API or the gem inabox plugin, and yank them through the gemcutter yank API. Authentication is handled by the web server or Rack stack, with Rack::Auth::Basic suggested for basic authentication. For publicly accessible servers, the setup guidance recommends Rack::Protection to help prevent XSS and CSRF vulnerabilities. The project recommends scoped Gemfile sources to guard against dependency confusion. It requires Ruby 3.0 or later and RubyGems 3.2.3 or later. RubyGems proxy support was removed in version 4.0. The project is MIT licensed.

Who it suits

Geminabox suits teams managing their own Ruby gems and able to run a self-hosted Rack application. It may also fit teams deploying gem hosting through Docker.

What it does well

  • Free and MIT licensed.
  • Bundler finds gems through the compact index without client configuration.
  • Supports Rack servers and Docker deployment.
  • Clients can push and yank gems through gemcutter APIs.

What to know first

  • Requires Ruby 3.0 or later and RubyGems 3.2.3 or later.
  • Authentication is left to the web server or Rack stack.
  • RubyGems proxy support was removed in version 4.0.

Limits

Geminabox has a free plan, but it is self-hosted and requires the listed Ruby and RubyGems versions. RubyGems proxy support is unavailable from version 4.0 onward.

Plans

PlanBilled and limitsPrice
GeminaboxSelf-hosted RubyGems hosting · MIT licensedFree

As github.com lists them, read 11 Oct 2026. The maker's own page has the final word.

Getting started

  1. Open the Geminabox project website
  2. Prepare Linux with Ruby 3.0 or later and RubyGems 3.2.3 or later
  3. Run it as a Rack application with rackup or a Rack server
  4. Deploy with Docker and mount a data volume if using containers
  5. Configure authentication in the web server or Rack stack
  6. Push gems with gemcutter or the gem inabox plugin

Verdict

Geminabox provides a self-hosted route for private Ruby gem hosting, with documented Rack and Docker deployment options. Teams need to handle authentication and follow the project’s security guidance for exposed servers.

Questions

Is Geminabox free?

Yes. The Geminabox plan is free, and the project is MIT licensed.

Which platforms does it support?

It supports Linux, self-hosted deployments, and web access.

Does Bundler need special client configuration?

Bundler finds hosted gems through Geminabox's compact index without client configuration.

How are gems uploaded and removed?

Clients can push with the standard gemcutter push API or gem inabox plugin, and yank with the gemcutter yank API.

Does it provide authentication?

Authentication is supplied by the web server or Rack stack, with Rack::Auth::Basic suggested.

Can it proxy RubyGems?

RubyGems proxy support was removed in version 4.0.

Facts from Geminabox's own pages

Audience
It provides private gem hosting for teams managing their own Ruby gems. · github.com, 11 Oct 2026
Authentication
Authentication is left to the web server or Rack stack, and the README suggests Rack::Auth::Basic for basic authentication. · github.com, 11 Oct 2026
Bundler integration
Bundler finds hosted gems through the compact index without client configuration. · github.com, 11 Oct 2026
Dependency safety
The README recommends scoped Gemfile sources, which pin each gem to one source to guard against dependency confusion. · github.com, 11 Oct 2026
Deployment
Geminabox runs as a Rack application and can be started with rackup or deployed with Rack servers such as Passenger, Puma, and Unicorn. · github.com, 11 Oct 2026
Docker
The project documents running Geminabox in Docker and notes that a mounted data volume preserves gems when the container is replaced. · github.com, 11 Oct 2026
Integrations
A gem-received hook can run custom code such as a team-chat notification, but the hook blocks upload processing unless slow work is made asynchronous. · github.com, 11 Oct 2026
License
The GitHub repository identifies the project as MIT licensed. · github.com, 11 Oct 2026
Proxy limitation
RubyGems proxy support was removed in version 4.0 because the dependency API it relied on was sunset and merged local and remote sources could invite dependency confusion. · github.com, 11 Oct 2026
Purpose
Geminabox lets you host your own gems and push new gems to it like rubygems.org. · github.com, 11 Oct 2026
Push and yank
Clients can push gems with the standard gemcutter push API or the gem inabox plugin, and yank gems with the gemcutter yank API. · github.com, 11 Oct 2026
Ruby requirements
The README lists Ruby 3.0 or later and RubyGems 3.2.3 or later as system requirements. · github.com, 11 Oct 2026
Security guidance
For a publicly accessible server, the setup example recommends Rack::Protection to help prevent XSS and CSRF vulnerabilities. · github.com, 11 Oct 2026

Where Geminabox stands on Freedom251

Look at these too