Skip to content

Commit

Permalink
Enable running CouchDB in devenv
Browse files Browse the repository at this point in the history
FAB-729

1. Port 5984 forwarded from VM to host.
2. `couchdb` script added in devenv/tools/bin to start
    and stop couchdb.

Change-Id: I830b6914422bf6e3d7ffbc7b8fffc8ad736d1f7b
Signed-off-by: Luis Sanchez <sanchezl@us.ibm.com>
  • Loading branch information
Luis Sanchez committed Oct 24, 2016
1 parent 038ea83 commit 288fed0
Show file tree
Hide file tree
Showing 2 changed files with 50 additions and 0 deletions.
1 change: 1 addition & 0 deletions devenv/Vagrantfile
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ Vagrant.configure('2') do |config|
config.vm.network :forwarded_port, guest: 7051, host: 7051 # Openchain gRPC services
config.vm.network :forwarded_port, guest: 7054, host: 7054 # Membership service
config.vm.network :forwarded_port, guest: 7053, host: 7053 # GRPCCient gRPC services
config.vm.network :forwarded_port, guest: 5984, host: 5984 # CouchDB service

config.vm.synced_folder "..", "#{SRCMOUNT}"
config.vm.synced_folder "..", "/opt/gopath/src/github.com/hyperledger/fabric"
Expand Down
49 changes: 49 additions & 0 deletions devenv/tools/couchdb
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
#!/usr/bin/env bash

couchDbContainerStatus() {
for s in created restarting running paused exited dead ; do
if [ -n "$(docker ps --all --quiet --filter name=couchdb --filter status=$s)" ] ; then
echo $s
return 0
fi
done
}

case "$1" in
"start")
case "$(couchDbContainerStatus)" in
"created" )
echo "Starting couchdb container..."
docker start couchdb
;;
"exited" )
echo "Restarting couchdb container..."
docker restart couchdb
;;
"paused" )
echo "Unpausing couchdb container..."
docker unpause couchdb
;;
"running" )
echo "couchdb container is already started"
docker ps --filter name=couchdb
;;
"restarting" | "dead" | * )
# if running, restarting, or dead, just let user deal with error
docker run \
--publish 5984:5984 `# publish port` \
--detach `# run as daemon` \
--name couchdb `# name container` \
`# map database dir to a host dir` \
klaemo/couchdb:2.0.0
;;
esac
;;
"stop")
echo "Stopping couchdb container..."
docker stop couchdb
;;
"status" | *)
docker ps --all --filter name=couchdb --format "{{.Status}}"
;;
esac

0 comments on commit 288fed0

Please sign in to comment.