MoinMoin Logo
  • Comments
  • Immutable Page
  • Menu
    • Navigation
    • RecentChanges
    • FindPage
    • Local Site Map
    • Help
    • HelpContents
    • HelpOnMoinWikiSyntax
    • Display
    • Attachments
    • Info
    • Raw Text
    • Print View
    • Edit
    • Load
    • Save
  • Login

Navigation

  • Start
  • Sitemap
Revision 9 as of 2021-04-14 22:03:13
  • CouchDB

CouchDB

  • https://couchdb.apache.org/

  • https://cwiki.apache.org/confluence/display/COUCHDB/Introduction

Clustered database that allows you to run a single logical database server on any number of servers or VMs.

Seamless multi-master sync, that scales from Big Data to Mobile, with an intuitive HTTP/JSON API and designed for Reliability.

Docker instances

   1 docker run -p 5986:5984 --rm -d --name my-couchdb-1 -e COUCHDB_USER=admin -e COUCHDB_PASSWORD=password apache/couchdb:latest
   2 docker run -p 5986:5985 --rm -d --name my-couchdb-2 -e COUCHDB_USER=admin -e COUCHDB_PASSWORD=password apache/couchdb:latest
   3 docker run -p 5986:5984 --rm -d --name my-couchdb-3 -e COUCHDB_USER=admin -e COUCHDB_PASSWORD=password apache/couchdb:latest
   4 
   5 docker network create couchnet
   6 docker network connect couchnet my-couchdb-1
   7 docker network connect couchnet my-couchdb-2 
   8 docker network connect couchnet my-couchdb-3
   9 docker ps
  10 
  11 curl localhost:49154
  12 {"couchdb":"Welcome","version":"3.1.1","git_sha":"ce596c65d","uuid":"08e4e36c41ea62c6e6f341020dcdfe7d","features":["access-ready","partitioned","pluggable-storage-engines","reshard","scheduler"],"vendor":{"name":"The Apache Software Foundation"}}
  13 
  14 docker exec -it my-couchdb-1 sh -c 'apt update &&
  15 apt install -y net-tools  inetutils-ping nano vim'
  16 docker exec -it my-couchdb-2 sh -c 'apt update &&
  17 apt install -y net-tools  inetutils-ping nano vim'
  18 docker exec -it my-couchdb-3 sh -c 'apt update &&
  19 apt install -y net-tools  inetutils-ping nano vim'

python CouchDB lib

  • pip3 install CouchDB
  • https://couchdb-python.readthedocs.io/en/latest/client.html#

   1 import couchdb
   2 server = couchdb.client.Server('http://user:pwd@example.org/dbx/')
   3 db = server['dbtest']
   4 print( db.info() )
   5 doc = db['00998876870c1935a6d2de43ade4']
   6 print( doc )
   7 
   8 for row in db.view('_all_docs'):
   9   print(row.id)
  • MoinMoin Powered
  • Python Powered
  • GPL licensed
  • Valid HTML 4.01