CouchDB

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.

Default TCP port is 5984.

Docker instances

   1 docker run -p 5984:5984 --rm -d --name my-couchdb-1 -e COUCHDB_USER=admin -e COUCHDB_PASSWORD=password apache/couchdb:latest
   2 docker run -p 5985:5984 --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:5984
  12 curl localhost:5985
  13 curl localhost:5986
  14 
  15 docker exec -it my-couchdb-1 sh -c 'apt update &&
  16 apt install -y net-tools  inetutils-ping nano vim'
  17 docker exec -it my-couchdb-2 sh -c 'apt update &&
  18 apt install -y net-tools  inetutils-ping nano vim'
  19 docker exec -it my-couchdb-3 sh -c 'apt update &&
  20 apt install -y net-tools  inetutils-ping nano vim'

python CouchDB lib

   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)

CouchDB (last edited 2023-05-26 13:52:24 by 127)