Share your code.
Export a CouchDB database as a line oriented JSON file, then upload that to S3. Then later on s32couchdb that same file to get it into CouchDB instance.
npm install -g couchdb2s3
couchdb2s3 \--bucket my-bucket \--database[--gzip] # Optionally gzip the export
s32couchdb \--bucket my-bucket \--database[--prefix `db/my-database`] # Optionally specify a s3 prefix,# defaults to `db/[name of database]`.[--marker `db/my-database-2010-12-31`] # Optionally specify a s3 marker,# defaults to `db/[name of database]-[yyyy]-[mm]-[dd]`# for yesterday's date.
AWS credentials for uploading and retrieving exports can be provided by;
- IAM role assigned to an EC2
- Environment variables; AWS_ACCESS_KEY_ID & AWS_SECRET_ACCESS_KEY
- A dotenv configuration file
s32couchdbwill not create a new database for you, you'll have to do that on your own.
- Attached documents are not currently supported.
- As written these scripts expect to be used as part of a export system where only the most recent backups are meaningful.