mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
492ce4c665
port 5984 to couchdb needs to be published explicitly in docker version 0.6.6
56 lines
1.7 KiB
ReStructuredText
56 lines
1.7 KiB
ReStructuredText
:title: Sharing data between 2 couchdb databases
|
|
:description: Sharing data between 2 couchdb databases
|
|
:keywords: docker, example, package installation, networking, couchdb, data volumes
|
|
|
|
.. _running_couchdb_service:
|
|
|
|
CouchDB Service
|
|
===============
|
|
|
|
.. include:: example_header.inc
|
|
|
|
Here's an example of using data volumes to share the same data between
|
|
two CouchDB containers. This could be used for hot upgrades, testing
|
|
different versions of CouchDB on the same data, etc.
|
|
|
|
Create first database
|
|
---------------------
|
|
|
|
Note that we're marking ``/var/lib/couchdb`` as a data volume.
|
|
|
|
.. code-block:: bash
|
|
|
|
COUCH1=$(sudo docker run -d -p 5984 -v /var/lib/couchdb shykes/couchdb:2013-05-03)
|
|
|
|
Add data to the first database
|
|
------------------------------
|
|
|
|
We're assuming your Docker host is reachable at ``localhost``. If not,
|
|
replace ``localhost`` with the public IP of your Docker host.
|
|
|
|
.. code-block:: bash
|
|
|
|
HOST=localhost
|
|
URL="http://$HOST:$(sudo docker port $COUCH1 5984 | grep -Po '\d+$')/_utils/"
|
|
echo "Navigate to $URL in your browser, and use the couch interface to add data"
|
|
|
|
Create second database
|
|
----------------------
|
|
|
|
This time, we're requesting shared access to ``$COUCH1``'s volumes.
|
|
|
|
.. code-block:: bash
|
|
|
|
COUCH2=$(sudo docker run -d -p 5984 -volumes-from $COUCH1 shykes/couchdb:2013-05-03)
|
|
|
|
Browse data on the second database
|
|
----------------------------------
|
|
|
|
.. code-block:: bash
|
|
|
|
HOST=localhost
|
|
URL="http://$HOST:$(sudo docker port $COUCH2 5984 | grep -Po '\d+$')/_utils/"
|
|
echo "Navigate to $URL in your browser. You should see the same data as in the first database"'!'
|
|
|
|
Congratulations, you are now running two Couchdb containers, completely
|
|
isolated from each other *except* for their data.
|