couchdb-docker.git
4 days agoFeedback from Docker official images (#121) master
Joan Touzet [Thu, 6 Dec 2018 23:12:53 +0000 (18:12 -0500)] 
Feedback from Docker official images (#121)

4 days agoCouchDB 2.3.0 + admin README notes (#120)
Joan Touzet [Thu, 6 Dec 2018 08:25:23 +0000 (03:25 -0500)] 
CouchDB 2.3.0 + admin README notes (#120)

7 days agoSwitch main Dockerfile to use binary Debian packages (#118)
Joan Touzet [Tue, 4 Dec 2018 01:26:02 +0000 (20:26 -0500)] 
Switch main Dockerfile to use binary Debian packages (#118)

7 days agoFix dev builds: gpg --batch, python3/pip3 (#119)
Joan Touzet [Tue, 4 Dec 2018 00:04:50 +0000 (19:04 -0500)] 
Fix dev builds: gpg --batch, python3/pip3 (#119)

7 weeks agoConditionally set ownership and permissions in entrypoint (#110)
Adam Kocoloski [Sat, 20 Oct 2018 17:21:04 +0000 (13:21 -0400)] 
Conditionally set ownership and permissions in entrypoint (#110)

* Chown files in /opt/couchdb only when necessary

Recursive modification of ownership and permissions in the entry point
has been implicated in slow container startup times. This change checks
the ownership first and only modifies it if necessary. It is modelled
after similar changes recently applied to a number of other projects
e.g. docker-library/redis#166.

* Chmod data files only if necessary

Previously we had been doing a blanket recursive chmod to 770 on
everything in the datadir. This had a few problems:

- The files themselves need not have the executable bit set
- CouchDB itself creates directories and files with 755/644
- Executing lots of chmod operations caused startup delays

This patch makes the execution of chmod conditional, and works to set
the permissions to what they would normally be when CouchDB creates the
the files and directories.

* Chmod config files only if necessary

This patch also drops the target permissions from 775/664 to 755/644,
as the latter permissions are the ones set by the CouchDB installation
itself.

2 months agoAdded information about cluster configuration. This Fixes #106 (#108)
Martin Barth [Tue, 18 Sep 2018 15:24:36 +0000 (17:24 +0200)] 
Added information about cluster configuration. This Fixes #106 (#108)

Added information about cluster configuration. Closes #106

3 months agoDo not remove apt-transport-https
Joan Touzet [Wed, 29 Aug 2018 20:37:03 +0000 (16:37 -0400)] 
Do not remove apt-transport-https

4 months agoFeedback from @tianon + deprecate 1.x images
Joan Touzet [Wed, 8 Aug 2018 15:14:19 +0000 (08:14 -0700)] 
Feedback from @tianon + deprecate 1.x images

4 months agoPrep 2.2.0 docker iamge
Joan Touzet [Thu, 26 Jul 2018 03:05:26 +0000 (20:05 -0700)] 
Prep 2.2.0 docker iamge

4 months agoUse debian stretch, closes #91
Joan Touzet [Tue, 24 Jul 2018 06:15:36 +0000 (23:15 -0700)] 
Use debian stretch, closes #91

4 months agoadd end of line before inserting [admin] and [secret] in case of docker.ini already...
Thomas Prevet [Thu, 12 Jul 2018 14:11:35 +0000 (16:11 +0200)] 
add end of line before inserting [admin] and [secret] in case of docker.ini already exists

5 months agoUpgrade 1.7.1, 2.1.1 -> 1.7.2, 2.1.2
Joan Touzet [Tue, 10 Jul 2018 21:51:42 +0000 (14:51 -0700)] 
Upgrade 1.7.1, 2.1.1 -> 1.7.2, 2.1.2

5 months agoBackport fix for #81 and #82 to 2.1.x image
Joan Touzet [Tue, 10 Jul 2018 20:21:32 +0000 (13:21 -0700)] 
Backport fix for #81 and #82 to 2.1.x image

5 months agoFix configuration save
Le Mouellic Maxime [Thu, 17 May 2018 16:27:13 +0000 (18:27 +0200)] 
Fix configuration save

On restart configuration saved in local.d/ was lost
Closes #78

5 months agoPersist custom config settings across restarts
Adam Kocoloski [Mon, 21 May 2018 12:31:36 +0000 (08:31 -0400)] 
Persist custom config settings across restarts

This patch ensures that configuration properties set using the _config
endpoint survive container restarts. Previously these settings would be
erased by the code in the entrypoint that writes down the admin user
and cookie auth secret.

The patch also takes care to ensure that the admin user and secret are
not accidentally left on the disk in plaintext -- i.e., it ensures that
the entrypoint writes these settings into the last entry in the config
chain.

Finally, the patch ensures that local.d is always used to store custom
configuration. Backing local.d by a persistent volume should allow for
the config properties to survive a Pod being rescheduled onto another
node by Kubernetes.

5 months agoupdate docs deps and dev-cluster node to 8.x
Joan Touzet [Tue, 10 Jul 2018 06:24:13 +0000 (02:24 -0400)] 
update docs deps and dev-cluster node to 8.x

5 months agoUpdate Node for dev image dev-readme
Joan Touzet [Tue, 10 Jul 2018 06:08:18 +0000 (02:08 -0400)] 
Update Node for dev image

8 months agoUpdate dev section
Joan Touzet [Wed, 11 Apr 2018 17:44:55 +0000 (13:44 -0400)] 
Update dev section

8 months agoFurther fixes for dev and dev-cluster targets
Joan Touzet [Wed, 11 Apr 2018 07:37:43 +0000 (03:37 -0400)] 
Further fixes for dev and dev-cluster targets

8 months agoAdd new targets to .travis.yml CI/CD
Joan Touzet [Mon, 9 Apr 2018 15:50:43 +0000 (11:50 -0400)] 
Add new targets to .travis.yml CI/CD

8 months agoInstall newer RTD theme from pip
Adam Kocoloski [Wed, 17 Jan 2018 18:21:06 +0000 (13:21 -0500)] 
Install newer RTD theme from pip

See #58

8 months agoIntroduce developer-friendly Dockerfile
Adam Kocoloski [Tue, 16 Jan 2018 01:41:08 +0000 (20:41 -0500)] 
Introduce developer-friendly Dockerfile

This dev image configuration is modeled after the 2.1.1 Dockerfile with
a few modifications useful for day-to-day development:

* The Dockerfile builds from git rather than the official source
  releases. The build is configurable using the following build_args:

  clone_url (default: https://gitbox.apache.org/repos/asf/couchdb.git)
  checkout_branch (default: master)
  configure_options (default: <blank>)

  The configure_options are passed directly to ./configure and can be
  used to e.g. --disable-docs or --disable-fauxton:

  docker build --build-arg checkout_branch=my-cool-feature dev/

* We take advantage of multi-stage builds [1] to create a series of
  layers that optimize build time without inflating the final image
  size. In normal development the layers that install runtime and
  build dependencies will be cached, and the build will start by
  updating and configuring the existing git clone.

This work includes the changes proposed in #50 and #57.

8 months agoRename dev to dev-cluster
Adam Kocoloski [Sun, 14 Jan 2018 03:28:45 +0000 (22:28 -0500)] 
Rename dev to dev-cluster

This paves the way for a simpler dev image Dockerfile.

8 months agoImprove README for configuration changes, closes #47
Joan Touzet [Wed, 31 Jan 2018 19:38:57 +0000 (14:38 -0500)] 
Improve README for configuration changes, closes #47

10 months agoUse 5984:5984 as couchdb uid:gid, closes #53
Joan Touzet [Wed, 31 Jan 2018 19:14:23 +0000 (11:14 -0800)] 
Use 5984:5984 as couchdb uid:gid, closes #53

10 months agoUse default.d for image-provided config in 2.x (#50)
Adam Kocoloski [Wed, 24 Jan 2018 19:30:22 +0000 (13:30 -0600)] 
Use default.d for image-provided config in 2.x (#50)

This change moves the configuration overrides that are built into the
image into `etc/default.d` instead of `etc/local.d`, which allows
systems like Kubernetes to come in and own `default.d` as a config
volume mount point while still allowing for online overrides to take
highest precedence.

10 months agoRemove haproxy from production image
Adam Kocoloski [Sun, 14 Jan 2018 02:23:14 +0000 (21:23 -0500)] 
Remove haproxy from production image

HAProxy is included in the "dev-cluster" image to proxy requests to the
three nodes deployed via that image. The production image runs a single
CouchDB instance in each image and does not need or want a proxy server
in the image.

Closes #56

12 months ago1.7.1 release
Jan Lehnardt [Sat, 11 Nov 2017 16:17:09 +0000 (17:17 +0100)] 
1.7.1 release

13 months agoIncorporate more feedback from @yosifkit
Joan Touzet [Tue, 7 Nov 2017 06:25:02 +0000 (01:25 -0500)] 
Incorporate more feedback from @yosifkit

13 months agoBump to 1.7.0, 2.1.1
Joan Touzet [Mon, 6 Nov 2017 21:37:42 +0000 (16:37 -0500)] 
Bump to 1.7.0, 2.1.1

13 months agoIncorporate more feedback from official Docker image maintainers
Joan Touzet [Mon, 6 Nov 2017 21:14:53 +0000 (16:14 -0500)] 
Incorporate more feedback from official Docker image maintainers

14 months agoRevert some changes for clustering
Joan Touzet [Mon, 25 Sep 2017 18:11:00 +0000 (11:11 -0700)] 
Revert some changes for clustering

Port 5986 does not need to be exposed, can be accessed in other ways
as described in the README.

Port range for inet_dist_listen must be one port per erlang node.
Since Docker runs a single VM per container, a single value here is
sufficient.

14 months agoMerge pull request #29 from apache/fix-clustering
Joan Touzet [Sun, 24 Sep 2017 08:26:53 +0000 (04:26 -0400)] 
Merge pull request #29 from apache/fix-clustering

Bind node-local port to all container interfaces

14 months agoBind node-local port to all container interfaces 29/head
Joan Touzet [Sun, 24 Sep 2017 08:16:42 +0000 (01:16 -0700)] 
Bind node-local port to all container interfaces

14 months agoUpdate with feedback from @yosifkit (#28)
Joan Touzet [Sun, 24 Sep 2017 08:05:54 +0000 (04:05 -0400)] 
Update with feedback from @yosifkit (#28)

Includes the following feedback from @yosifkit :

* Permission/ownership changes occur as often as possible in the layer in which the files are created to aid some Docker graph drivers
* Allow for simplified invocation. Any of the following work to specify additional CLI arguments:
  * `docker run couchdb:2.1.0 /opt/couchdb/bin/couchdb +A 16`
  * `docker run couchdb:2.1.0 couchdb +A 16`
  * `docker run couchdb:2.1.0 +A 16`
  * `docker run couchdb:2.1.0 -couch_ini /path/to/my/couch.ini ....`
* `gpg --verify` replaced with `gpg --batch --verify` everywhere.

14 months agoUpdate readme for 2.1.0, new Docker Hub location
Joan Touzet [Wed, 20 Sep 2017 06:52:14 +0000 (23:52 -0700)] 
Update readme for 2.1.0, new Docker Hub location

14 months agoRemove deprecated 2.0.0 image
Joan Touzet [Wed, 20 Sep 2017 06:26:56 +0000 (23:26 -0700)] 
Remove deprecated 2.0.0 image

14 months agoMake secret configurable via environment (#25)
Dominik Burgdörfer [Tue, 19 Sep 2017 16:17:22 +0000 (18:17 +0200)] 
Make secret configurable via environment (#25)

Fixes #9 issues raised for running a cluster with the 2.1.0 image

14 months agoAllow Erlang distribution over 9100-9200 (2.1.0 only) (#26)
Joan Touzet [Tue, 19 Sep 2017 08:26:05 +0000 (04:26 -0400)] 
Allow Erlang distribution over 9100-9200 (2.1.0 only) (#26)

15 months agoAdd couchdb 2.1.0 docker image (#24)
Raphael Randschau [Thu, 24 Aug 2017 16:06:48 +0000 (18:06 +0200)] 
Add couchdb 2.1.0 docker image (#24)

* Add couchdb 2.1.0
* Add new port to Dockerfile
* Remove node from Dockerfile

15 months agoRemove link to dev image with explanation
Joan Touzet [Tue, 22 Aug 2017 19:03:56 +0000 (15:03 -0400)] 
Remove link to dev image with explanation

18 months agoAdd/update contribution guidelines, issue/PR templates for GH Issues (#15)
Joan Touzet [Thu, 18 May 2017 12:56:30 +0000 (08:56 -0400)] 
Add/update contribution guidelines, issue/PR templates for GH Issues (#15)

19 months ago(#11) Fix docker image naming
garren smith [Wed, 26 Apr 2017 12:50:05 +0000 (14:50 +0200)] 
(#11) Fix docker image naming

`1`, `1.6`, `1.6.1`: CouchDB 1.6.1
- `1-couchperuser`, `1.6-couchperuser`, `1.6.1-couchperuser`: CouchDB
  1.6.1 with couchperuser plugin
- `latest`, `2.0.0`: CouchDB 2.0 single node
- `dev`: CouchDB 2.0 master (development version) with preconfigured dev
  cluster and documentation

19 months agoupdate 2.0-dev-docs to use new repo (#12)
garren smith [Wed, 26 Apr 2017 07:42:00 +0000 (09:42 +0200)] 
update 2.0-dev-docs to use new repo (#12)

22 months ago2.0.0: update tini and add gpg verification
klaemo [Wed, 8 Feb 2017 17:51:30 +0000 (18:51 +0100)] 
2.0.0: update tini and add gpg verification

22 months ago1.6.1: update tini
klaemo [Wed, 8 Feb 2017 17:51:01 +0000 (18:51 +0100)] 
1.6.1: update tini

22 months agoUpdate README.md with info about the creation of system tables in 2.0 (#103)
Duncan Kolba [Fri, 3 Feb 2017 16:12:41 +0000 (17:12 +0100)] 
Update README.md with info about the creation of system tables in 2.0 (#103)

22 months agoDockerfile puts local.ini in /opt/couchdb/etc/, not local.d. (#99)
Victor Heng [Fri, 27 Jan 2017 21:28:56 +0000 (13:28 -0800)] 
Dockerfile puts local.ini in /opt/couchdb/etc/, not local.d. (#99)

2 years agoAdd COUCHDB_HTTP_PORT/BIND_ADDRESS to 1.6.1 (#92)
Jean-Christophe Hoelt [Sun, 13 Nov 2016 11:28:06 +0000 (13:28 +0200)] 
Add COUCHDB_HTTP_PORT/BIND_ADDRESS to 1.6.1 (#92)

2 years agopoint travis to correct images
klaemo [Sun, 13 Nov 2016 11:13:10 +0000 (12:13 +0100)] 
point travis to correct images

2 years agoAdding the option to set a nodename using an environment variable.
Romain Brucker [Tue, 4 Oct 2016 20:08:31 +0000 (15:08 -0500)] 
Adding the option to set a nodename using an environment variable.

closes #82

2 years agofix 2.0-dev
klaemo [Sun, 13 Nov 2016 11:04:26 +0000 (12:04 +0100)] 
fix 2.0-dev

2 years agoremove old images
klaemo [Sun, 13 Nov 2016 09:20:43 +0000 (10:20 +0100)] 
remove old images

2 years agoRelax CouchDB v2 entry point ini (#91)
Tom Vincent [Thu, 3 Nov 2016 16:49:14 +0000 (16:49 +0000)] 
Relax CouchDB v2 entry point ini (#91)

`admins` could be set in any ini file, so allow it.

2 years agofix reference to -single image
Clemens Stolle [Thu, 3 Nov 2016 16:11:25 +0000 (17:11 +0100)] 
fix reference to -single image

2 years agoClarify which sections in README are for 1.6 and 2.0 (latest) (#90)
jrop [Tue, 25 Oct 2016 08:50:01 +0000 (02:50 -0600)] 
Clarify which sections in README are for 1.6 and 2.0 (latest) (#90)

Fixes #88

2 years agoRemove "latest" tag from 1.6.1. (#89)
jrop [Tue, 25 Oct 2016 08:49:18 +0000 (02:49 -0600)] 
Remove "latest" tag from 1.6.1. (#89)

Fixes #80

2 years agoAdded environment-based admin user/pass (#81)
briansneddon [Sat, 8 Oct 2016 15:25:18 +0000 (10:25 -0500)] 
Added environment-based admin user/pass (#81)

Added COUCHDB_USER and COUCHDB_PASS from the 1.6.1 version and adjusted the
file locations to reflect the new 2.0.0 locations

2 years agoreadd haproxy (#79)
Robert Kowalski [Sat, 8 Oct 2016 15:23:42 +0000 (17:23 +0200)] 
readd haproxy (#79)

this readds haproxy as a dependency. this way you can pass
`--with-haproxy` as a flag again and expose couchdb on 5984

closes #78

2 years agoupdate readme
Clemens Stolle [Tue, 20 Sep 2016 15:38:38 +0000 (17:38 +0200)] 
update readme

2 years agoadd 2.0.0 based on 2.0.0-rc1-vote (#75)
Daniel Holth [Tue, 20 Sep 2016 15:36:04 +0000 (11:36 -0400)] 
add 2.0.0 based on 2.0.0-rc1-vote (#75)

2 years agofix up readme
klaemo [Thu, 15 Sep 2016 20:21:35 +0000 (22:21 +0200)] 
fix up readme

2 years agoupdate readme
klaemo [Thu, 15 Sep 2016 20:19:48 +0000 (22:19 +0200)] 
update readme

2 years ago2.0.0-rc1-vote: remove unused haproxy
klaemo [Thu, 15 Sep 2016 20:19:35 +0000 (22:19 +0200)] 
2.0.0-rc1-vote: remove unused haproxy

2 years agoremove 2.0-single
klaemo [Thu, 15 Sep 2016 20:18:59 +0000 (22:18 +0200)] 
remove 2.0-single

2 years ago2.0-dev: update to latest RC
klaemo [Thu, 15 Sep 2016 20:18:37 +0000 (22:18 +0200)] 
2.0-dev: update to latest RC

2 years agoadd 2.0.0-rc1-vote 🎉 (#74)
Clemens Stolle [Thu, 15 Sep 2016 19:33:17 +0000 (21:33 +0200)] 
add 2.0.0-rc1-vote 🎉 (#74)

2 years ago2.0: attempt to fix 2.0-dev
klaemo [Wed, 17 Aug 2016 20:27:39 +0000 (22:27 +0200)] 
2.0: attempt to fix 2.0-dev

2 years agoupdate readme
klaemo [Wed, 17 Aug 2016 20:20:36 +0000 (22:20 +0200)] 
update readme

2 years ago2.0: bump to RC4 (#69)
Clemens Stolle [Wed, 17 Aug 2016 20:05:18 +0000 (22:05 +0200)] 
2.0: bump to RC4 (#69)

2 years agofix travis build
klaemo [Thu, 4 Aug 2016 13:20:42 +0000 (15:20 +0200)] 
fix travis build

2 years ago2.0.0-RC3
klaemo [Thu, 4 Aug 2016 13:13:39 +0000 (15:13 +0200)] 
2.0.0-RC3

2 years agoupdate readme
klaemo [Thu, 21 Jul 2016 20:43:16 +0000 (22:43 +0200)] 
update readme

2 years ago2.0-dev: pin to RC2
klaemo [Thu, 21 Jul 2016 20:39:10 +0000 (22:39 +0200)] 
2.0-dev: pin to RC2

2 years agoadd initial 2.0-rc2 image (#64)
Clemens Stolle [Thu, 21 Jul 2016 20:37:14 +0000 (22:37 +0200)] 
add initial 2.0-rc2 image (#64)

2 years ago1.6: allow admin user/password special chars (#60) (#61)
Alexander Harding [Wed, 20 Jul 2016 14:36:55 +0000 (09:36 -0500)] 
1.6: allow admin user/password special chars (#60) (#61)

Using the % symbol is reserved in the printf format string

2 years agoFix couchdb2-single image (#59)
Chris Foster [Wed, 29 Jun 2016 17:58:53 +0000 (10:58 -0700)] 
Fix couchdb2-single image (#59)

2 years agoImprove CouchDB 2.0 production image
Chris Foster [Fri, 17 Jun 2016 19:11:35 +0000 (12:11 -0700)] 
Improve CouchDB 2.0 production image

- properly use /opt/couchdb/data for the volume
- remove an unneeded couchdb.config file
- EXPOSE ports all on one line
- rename it to 2.0-single, since it's not actually production

closes #56

2 years agoAdd Dockerfile for CouchDB 2.0 production
Adam Kocoloski [Fri, 29 Apr 2016 02:09:17 +0000 (22:09 -0400)] 
Add Dockerfile for CouchDB 2.0 production

Unlike the 2.0-dev build, which results in a fully-connected 3 node
cluster inside the container, this Dockerfile builds a minimal Erlang
release using reltool, installs that release into /opt/couchdb, and
runs just the one single Erlang VM. Orchestrating a cluster of these is
out of scope.

closes #52
closes #56

2 years agoadd Travis CI
klaemo [Tue, 24 May 2016 21:33:05 +0000 (23:33 +0200)] 
add Travis CI

2 years agoimprove admin-party detection (#53)
Clemens Stolle [Mon, 9 May 2016 17:54:09 +0000 (19:54 +0200)] 
improve admin-party detection (#53)

2 years ago1.6: allow configuration of admin user via env vars (#46)
Clemens Stolle [Fri, 6 May 2016 15:38:10 +0000 (17:38 +0200)] 
1.6: allow configuration of admin user via env vars (#46)

2 years ago1.6: explicitly make entrypoint executable
klaemo [Fri, 6 May 2016 15:22:48 +0000 (17:22 +0200)] 
1.6: explicitly make entrypoint executable

should fix #19

2 years agocouchperuser: FROM official image
klaemo [Tue, 2 Feb 2016 23:43:26 +0000 (00:43 +0100)] 
couchperuser: FROM official image

2 years agocouchperuser: verify checksum
klaemo [Tue, 2 Feb 2016 23:37:01 +0000 (00:37 +0100)] 
couchperuser: verify checksum

2 years ago1.6.1: use tini for signal handling
klaemo [Wed, 27 Jan 2016 13:06:46 +0000 (14:06 +0100)] 
1.6.1: use tini for signal handling

closes klaemo/docker-couchdb#45

2 years ago1.6.1-couchperuser: we only need make
klaemo [Wed, 27 Jan 2016 12:25:46 +0000 (13:25 +0100)] 
1.6.1-couchperuser: we only need make

2 years agoreorganize Dockerfile
Joe Ferguson [Tue, 26 Jan 2016 18:56:41 +0000 (10:56 -0800)] 
reorganize Dockerfile

closes klaemo/docker-couchdb#44

2 years agoupdate available tags
klaemo [Tue, 26 Jan 2016 14:23:26 +0000 (15:23 +0100)] 
update available tags

2 years agoadd image with couchperuser plugin
klaemo [Tue, 26 Jan 2016 14:18:10 +0000 (15:18 +0100)] 
add image with couchperuser plugin

2 years agoupdate readme
klaemo [Mon, 25 Jan 2016 19:48:21 +0000 (20:48 +0100)] 
update readme

2 years ago1.6: update gosu to latest version
klaemo [Mon, 25 Jan 2016 13:25:24 +0000 (14:25 +0100)] 
1.6: update gosu to latest version

2 years ago1.6: only log to stdout
klaemo [Mon, 25 Jan 2016 13:24:47 +0000 (14:24 +0100)] 
1.6: only log to stdout

2 years ago1.6: merge RUN instructions
klaemo [Mon, 25 Jan 2016 13:24:23 +0000 (14:24 +0100)] 
1.6: merge RUN instructions

2 years ago2.0: more readme tweaks
klaemo [Sat, 19 Dec 2015 16:28:21 +0000 (17:28 +0100)] 
2.0: more readme tweaks

2 years ago2.0: tweak readme concerning haproxy and flags
klaemo [Sat, 19 Dec 2015 16:14:39 +0000 (17:14 +0100)] 
2.0: tweak readme concerning haproxy and flags

2 years agoexpose all the ports
klaemo [Fri, 18 Dec 2015 17:06:45 +0000 (18:06 +0100)] 
expose all the ports

2 years agoremove superfluous deps
klaemo [Fri, 18 Dec 2015 17:06:33 +0000 (18:06 +0100)] 
remove superfluous deps

2 years agodon't need to bind to 0.0.0.0 anymore
klaemo [Fri, 18 Dec 2015 16:19:57 +0000 (17:19 +0100)] 
don't need to bind to 0.0.0.0 anymore

2 years agosilence apt-get update
klaemo [Fri, 18 Dec 2015 16:16:27 +0000 (17:16 +0100)] 
silence apt-get update