mongo-replica-set
Command-line tool and API to quickly setup a MongoDB host or replica set for development purposes, based on the official tutorial.
Installation
To use the API:
$ npm install mongo-replica-set
To use the command-line tool install globally:
$ npm install -g mongo-replica-set
Usage
Command-line
Usage: mongo-replica-set [options] Options: -h, --help output usage information -V, --version output the version number -d, --data [folder] Base folder
Thus for a basic setup involving 3 mongod
instances simply run:
$ mongo-replica-set>>> Replica set ready: 127.0.0.1:27117, 127.0.0.1:27118, 127.0.0.1:27119
You can then (in a new terminal window) use mongo
to connect to the instances,
which should be running at localhost:27117
, localhost:27118
and
localhost:27119
respectively. Eg:
$ mongo --port 27117MongoDB shell version: 2.6.5connecting to: 127.0.0.1:27117/testrs_515_1429031406166:PRIMARY> show dbs;admin local 0.281GBrs_515_1429031406166:PRIMARY>
Press CTRL+C
in the original window to terminate the instances and clean up
the replica set.
Note: If any errors occur during initialisation the command will exit and clean up the replica set instances and data folders.
Single host
If you specify the number of hosts as 1 then a single non-replica-set host will be launched.
API
Basic usage:
var ReplicaSet = ReplicaSet; var rs = ; // returns a Promisersstart ;
You can pass options to the ReplicaSet
constructor, similar to the command-line
tool:
var rs = numInstances: 5 startPort: 55000 baseFolder: '/opt/data' verbose: true useColors: false /* Don't use colours when outputting to console */; rsstart;
Once the replica set is running you can obtain the hostname:port
connection
strings:
var conn = rs; // [ '127.0.0.1:55000', '127.0.0.1:55001', '127.0.0.1:55002']
Contributing
Contributions are welcome! Please see CONTRIBUTING.md
.
LICENSE
MIT - see LICENSE.md
.