Skip to content

nEDM-TUM/CouchDB-Docker

Repository files navigation

CouchDB-Docker

Docker for CouchDB servers in the nEDM experiment.

Information

This docker is based off of klaemo/couchdb:1.6.1 and includes a number of scripts (os daemons and update notifiers) that need to be run in parallel.

The couchdb server which is run allows proxy authentication though with a randomly defined private key (automatically generated for each container), which means this is only used for the local scripts (os daemons/update notifiers) that run in the container.

Setup options

  1. Mount lib directory (R/W) to /usr/local/var/lib/couchdb
  2. Mount log directory (R/W) to /usr/local/var/log/couchdb
  3. To define an admin user, export the environment variable for the hash generated by CouchDB, i.e.: -e "ADMINHASH=admin = -pbkdf2-0hashfollowshere"
  4. To define a private key that is always used by this server, export the environment variable PRIVATE_KEY, i.e.: -e "PRIVATE_KEY=private_key_to_use"

Example command

docker run -d \
  -v /local_path_to_lib/couchdb:/usr/local/var/lib/couchdb \
  -v /local_path_t_log/couchdb_log:/usr/local/var/log/couchdb \
  -e "ADMINHASH=admin = -pbkdf2-HASH_OF_ADMIN_LOGIN" \
  -e "PRIVATE_KEY=private_key_to_use" \
  --name nEDM-CouchDB \
  registry.hub.docker.com/mgmarino/couchdb-docker:latest

-e parts of the command are optional. Note, if you want to test to see if the couchdb instance is running, you can export port 5984: -p 15984:5984 where the local port 15984 is used.

Once running

There are a few options that have to be taken care of to setup for an nEDM server:

Alarm Daemon

If you wish to run the alarm daemon, change alarm_daemon:disabled to be false in the configuration. Other configuration options:

{
  email_agent : 'name.of.smtp.server', // name of SMTP server to send
                                       // notification emails
  emails : ['[email protected]', '[email protected]'], // list of email addresses
													// that receive
													// notification
  disabled : true // don't run on this server
}

View Updater/Aggregator

This runs to update views as well as aggregates changes from nedm/ databases

Options include:

{
  write_aggregate : false, // Run aggregation (set to true to do this)
  checked_types   : ['data', 'heartbeat'], // Types of documents that are
										   // aggregated into the aggregate db
}

About

Docker for CouchDB installation for nEDM servers

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published