Github user iilyak commented on the pull request:
https://github.com/apache/couchdb/pull/340#issuecomment-144113688
I see following use cases for docker images:
1. Use docker to build couchdb on systems without building tools.
2. Use docker to run single node couchdb for testing.
3. Use docker to run cluster of couchdb nodes for testing.
4. Use docker to run couchdb in production.
I think `#4` is out of the scope.
For `#1` you would do
1.1. Write a build script (`dev/docker/build`) which does the build and
COPY it into the image. Update PATH so build command could be found.
1.2. bind current directory to the docker container under any known
location (`/usr/src/couchdb`)
1.3. pass name of the command to docker (`build` in this case).
I.e. `docker run -it -name 'db1' -d `pwd`:/usr/src/couchdb docker-image
build`
For `#2` you would do
```
docker run -it -name 'db1' -e "name=db1" -d `pwd`/dev/data:/data -d
`pwd`:/usr/src/couchdb -p 15984:5984 15986:5986 docker-image run
OR
docker run -it -name 'db1' -d `pwd`/dev/data:/data -d
`pwd`:/usr/src/couchdb -p 15984:5984 15986:5986 docker-image run db1
```
For `#3` you could use `https://docs.docker.com/compose/`
OR you could use links manually
Since the commands are long we could have a helper CLI like:
```
dev/docker-cli run db1
dev/docker-cli run db2
dev/docker-cli run db3
dev/docker-cli run lb
dev/docker-cli run cluster # --- starts 3 nodes cluster
dev/docker-cli run cluster 10 # --- starts 10 nodes cluster
dev/docker-cli build
dev/docker-cli test
```
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---