Total Pageviews

Saturday 15 February 2014

Genghis:一个单文件的MongoDB管理程序

Genghis
The single-file MongoDB admin app, by Justin Hileman.

If you installed Genghis as a Ruby gem, running Genghis standalone is easy:
$ genghisapp
Now that it's running, you can use genghisapp --kill to stop it.
Windows users: Due to this bug Genghis always runs in foreground mode.
If you didn't go the gem route, you can still run genghis.rb standalone:
$ ruby genghis.rb
genghis.php can also be run as a PHP 5.4 CLI SAPI standalone server:
$ php -S localhost:8000 genghis.php

In your LAMP stack

Simply drop genghis.php in a web-accessible directory on a LAMP server. Don't forget .htaccess for pretty URLs!

With nginx and PHP-fpm (and friends)

You'll need some fancy config action, but it's fairly straightforward.

In an existing Rack app

For a super basic Rack config, use a config.ru file like this:
require 'genghis'

run Genghis::Server
If you want to load Genghis on a subpath, possibly alongside other apps, it's easy to do with Rack's URLMap:
require 'genghis'

run Rack::URLMap.new \
  '/'        => Your::App.new,
  '/genghis' => Genghis::Server.new

With Rails 3

You can even mount Genghis on a subpath in your existing Rails 3 app by adding require 'genghis' to the top of your routes file (or in an initializer) and then adding this to routes.rb:
mount Genghis::Server.new, :at => '/genghis'

Genghis Dependencies

PHP

You will need at least PHP 5.2 and the PECL MongoDB driver.

Ruby

Genghis requires Ruby 1.8 or awesomer.
The easiest way to install Genghis and all dependencies is via RubyGems:
$ gem install genghisapp
Or you could check out a local copy of the Git repo and install dependencies via Bundler:
$ gem install bundler
$ bundle install

Configuration

Check the Genghis wiki for additional configuration information.

Genghis uses a number of amazing open source libraries, distributed under the following licenses

from  https://github.com/bobthecow/genghis#readme