You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by wo...@apache.org on 2017/11/06 21:37:56 UTC
[couchdb-docker] 01/01: Bump to 1.7.0, 2.1.1
This is an automated email from the ASF dual-hosted git repository.
wohali pushed a commit to branch 170-211
in repository https://gitbox.apache.org/repos/asf/couchdb-docker.git
commit 80c3c42a16eda1baf1c3e9fbf6a267c8e4b97086
Author: Joan Touzet <jo...@atypical.net>
AuthorDate: Mon Nov 6 16:37:42 2017 -0500
Bump to 1.7.0, 2.1.1
---
.travis.yml | 12 +-
1.6.1/Dockerfile | 124 ---------------------
1.6.1/docker-entrypoint.sh | 62 -----------
.../Dockerfile | 2 +-
.../docker-entrypoint.sh | 0
{2.1.0 => 2.1.1}/Dockerfile | 2 +-
{2.1.0 => 2.1.1}/docker-entrypoint.sh | 0
{2.1.0 => 2.1.1}/local.ini | 0
{2.1.0 => 2.1.1}/vm.args | 0
README.md | 24 ++--
10 files changed, 20 insertions(+), 206 deletions(-)
diff --git a/.travis.yml b/.travis.yml
index a1a3f2e..2eba791 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -4,11 +4,11 @@ services:
- docker
before_install:
- - docker build -t couchdb:1.6.1 1.6.1
- - docker build -t couchdb:1.6.1-couchperuser 1.6.1-couchperuser
- - docker build -t couchdb:2.1.0 2.1.0
+ - docker build -t couchdb:1.7.0 1.7.0
+ - docker build -t couchdb:1.7.0-couchperuser 1.7.0-couchperuser
+ - docker build -t couchdb:2.1.1 2.1.1
script:
- - docker run -d -p 5984:5984 couchdb:1.6.1 && sleep 5 && curl http://localhost:5984
- - docker run -d -p 5985:5984 couchdb:1.6.1-couchperuser && sleep 5 && curl http://localhost:5985
- - docker run -d -p 5986:5984 couchdb:2.1.0 && sleep 5 && curl http://localhost:5986
+ - docker run -d -p 5984:5984 couchdb:1.7.0 && sleep 5 && curl http://localhost:5984
+ - docker run -d -p 5985:5984 couchdb:1.7.0-couchperuser && sleep 5 && curl http://localhost:5985
+ - docker run -d -p 5986:5984 couchdb:2.1.1 && sleep 5 && curl http://localhost:5986
diff --git a/1.6.1/Dockerfile b/1.6.1/Dockerfile
deleted file mode 100644
index 6113501..0000000
--- a/1.6.1/Dockerfile
+++ /dev/null
@@ -1,124 +0,0 @@
-# Licensed under the Apache License, Version 2.0 (the "License"); you may not
-# use this file except in compliance with the License. You may obtain a copy of
-# the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations under
-# the License.
-
-FROM debian:jessie
-
-MAINTAINER CouchDB Developers dev@couchdb.apache.org
-
-# Install instructions from https://cwiki.apache.org/confluence/display/COUCHDB/Debian
-
-RUN groupadd -r couchdb && useradd -d /var/lib/couchdb -g couchdb couchdb
-
-RUN apt-get update -y && apt-get install -y --no-install-recommends \
- ca-certificates \
- curl \
- erlang-nox \
- libicu52 \
- libmozjs185-1.0 \
- libnspr4 \
- libnspr4-0d \
- && rm -rf /var/lib/apt/lists/*
-
-ENV GOSU_VERSION 1.10
-ENV TINI_VERSION 0.16.1
-RUN set -ex; \
- \
- apt-get update; \
- apt-get install -y --no-install-recommends wget; \
- rm -rf /var/lib/apt/lists/*; \
- \
- dpkgArch="$(dpkg --print-architecture | awk -F- '{ print $NF }')"; \
- \
-# install gosu
- wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/${GOSU_VERSION}/gosu-$dpkgArch"; \
- wget -O /usr/local/bin/gosu.asc "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$dpkgArch.asc"; \
- export GNUPGHOME="$(mktemp -d)"; \
- gpg --keyserver ha.pool.sks-keyservers.net --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4; \
- gpg --batch --verify /usr/local/bin/gosu.asc /usr/local/bin/gosu; \
- rm -r "$GNUPGHOME" /usr/local/bin/gosu.asc; \
- chmod +x /usr/local/bin/gosu; \
- gosu nobody true; \
- \
-# install tini
- wget -O /usr/local/bin/tini "https://github.com/krallin/tini/releases/download/v${TINI_VERSION}/tini-$dpkgArch"; \
- wget -O /usr/local/bin/tini.asc "https://github.com/krallin/tini/releases/download/v${TINI_VERSION}/tini-$dpkgArch.asc"; \
- export GNUPGHOME="$(mktemp -d)"; \
- gpg --keyserver ha.pool.sks-keyservers.net --recv-keys 595E85A6B1B4779EA4DAAEC70B588DFF0527A9B7; \
- gpg --batch --verify /usr/local/bin/tini.asc /usr/local/bin/tini; \
- rm -r "$GNUPGHOME" /usr/local/bin/tini.asc; \
- chmod +x /usr/local/bin/tini; \
- tini --version; \
- \
- apt-get purge -y --auto-remove wget
-
-# https://www.apache.org/dist/couchdb/KEYS
-ENV GPG_KEYS \
- 15DD4F3B8AACA54740EB78C7B7B7C53943ECCEE1 \
- 1CFBFA43C19B6DF4A0CA3934669C02FFDF3CEBA3 \
- 25BBBAC113C1BFD5AA594A4C9F96B92930380381 \
- 4BFCA2B99BADC6F9F105BEC9C5E32E2D6B065BFB \
- 5D680346FAA3E51B29DBCB681015F68F9DA248BC \
- 7BCCEB868313DDA925DF1805ECA5BCB7BB9656B0 \
- C3F4DFAEAD621E1C94523AEEC376457E61D50B88 \
- D2B17F9DA23C0A10991AF2E3D9EE01E47852AEE4 \
- E0AF0A194D55C84E4A19A801CDB0C0F904F4EE9B
-RUN set -xe \
- && for key in $GPG_KEYS; do \
- gpg --keyserver ha.pool.sks-keyservers.net --recv-keys "$key"; \
- done
-
-ENV COUCHDB_VERSION 1.6.1
-
-# download dependencies, compile and install couchdb,
-# set correct permissions, expose couchdb to the outside and disable logging to disk
-RUN buildDeps=' \
- gcc \
- g++ \
- erlang-dev \
- libcurl4-openssl-dev \
- libicu-dev \
- libmozjs185-dev \
- libnspr4-dev \
- make \
- ' \
- && apt-get update && apt-get install -y --no-install-recommends $buildDeps \
- && curl -fSL http://apache.osuosl.org/couchdb/source/$COUCHDB_VERSION/apache-couchdb-$COUCHDB_VERSION.tar.gz -o couchdb.tar.gz \
- && curl -fSL https://www.apache.org/dist/couchdb/source/$COUCHDB_VERSION/apache-couchdb-$COUCHDB_VERSION.tar.gz.asc -o couchdb.tar.gz.asc \
- && gpg --batch --verify couchdb.tar.gz.asc couchdb.tar.gz \
- && mkdir -p /usr/src/couchdb \
- && tar -xzf couchdb.tar.gz -C /usr/src/couchdb --strip-components=1 \
- && cd /usr/src/couchdb \
- && ./configure --with-js-lib=/usr/lib --with-js-include=/usr/include/mozjs \
- && make && make install \
- && apt-get purge -y --auto-remove $buildDeps \
- && rm -rf /var/lib/apt/lists/* /usr/src/couchdb /couchdb.tar.gz* \
- && chown -R couchdb:couchdb \
- /usr/local/lib/couchdb /usr/local/etc/couchdb \
- /usr/local/var/lib/couchdb /usr/local/var/log/couchdb /usr/local/var/run/couchdb \
- && chmod -R g+rw \
- /usr/local/lib/couchdb /usr/local/etc/couchdb \
- /usr/local/var/lib/couchdb /usr/local/var/log/couchdb /usr/local/var/run/couchdb \
- && mkdir -p /var/lib/couchdb \
- && sed -e 's/^bind_address = .*$/bind_address = 0.0.0.0/' -i /usr/local/etc/couchdb/default.ini \
- && sed -e 's!/usr/local/var/log/couchdb/couch.log$!/dev/null!' -i /usr/local/etc/couchdb/default.ini
-
-COPY ./docker-entrypoint.sh /
-RUN chmod +x /docker-entrypoint.sh
-
-# Define mountable directories.
-VOLUME ["/usr/local/var/lib/couchdb"]
-
-EXPOSE 5984
-WORKDIR /var/lib/couchdb
-
-ENTRYPOINT ["tini", "--", "/docker-entrypoint.sh"]
-CMD ["couchdb"]
diff --git a/1.6.1/docker-entrypoint.sh b/1.6.1/docker-entrypoint.sh
deleted file mode 100755
index c1c9f56..0000000
--- a/1.6.1/docker-entrypoint.sh
+++ /dev/null
@@ -1,62 +0,0 @@
-#!/bin/bash
-# Licensed under the Apache License, Version 2.0 (the "License"); you may not
-# use this file except in compliance with the License. You may obtain a copy of
-# the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations under
-# the License.
-
-set -e
-
-if [ "$1" = 'couchdb' ]; then
- # we need to set the permissions here because docker mounts volumes as root
- chown -R couchdb:couchdb \
- /usr/local/var/lib/couchdb \
- /usr/local/var/log/couchdb \
- /usr/local/var/run/couchdb \
- /usr/local/etc/couchdb
-
- chmod -R 0770 \
- /usr/local/var/lib/couchdb \
- /usr/local/var/log/couchdb \
- /usr/local/var/run/couchdb \
- /usr/local/etc/couchdb
-
- chmod 664 /usr/local/etc/couchdb/*.ini
- chmod 775 /usr/local/etc/couchdb/*.d
-
- if [ "$COUCHDB_USER" ] && [ "$COUCHDB_PASSWORD" ]; then
- # Create admin
- printf "[admins]\n%s = %s\n" "$COUCHDB_USER" "$COUCHDB_PASSWORD" > /usr/local/etc/couchdb/local.d/docker.ini
- chown couchdb:couchdb /usr/local/etc/couchdb/local.d/docker.ini
- fi
-
- printf "[httpd]\nport = %s\nbind_address = %s\n" ${COUCHDB_HTTP_PORT:=5984} ${COUCHDB_HTTP_BIND_ADDRESS:=0.0.0.0} > /usr/local/etc/couchdb/local.d/bind_address.ini
- chown couchdb:couchdb /usr/local/etc/couchdb/local.d/bind_address.ini
-
- # if we don't find an [admins] section followed by a non-comment, display a warning
- if ! grep -Pzoqr '\[admins\]\n[^;]\w+' /usr/local/etc/couchdb; then
- # The - option suppresses leading tabs but *not* spaces. :)
- cat >&2 <<-'EOWARN'
- ****************************************************
- WARNING: CouchDB is running in Admin Party mode.
- This will allow anyone with access to the
- CouchDB port to access your database. In
- Docker's default configuration, this is
- effectively any other container on the same
- system.
- Use "-e COUCHDB_USER=admin -e COUCHDB_PASSWORD=password"
- to set it in "docker run".
- ****************************************************
- EOWARN
- fi
-
- exec gosu couchdb "$@"
-fi
-
-exec "$@"
diff --git a/1.6.1-couchperuser/Dockerfile b/1.7.0-couchperuser/Dockerfile
similarity index 98%
rename from 1.6.1-couchperuser/Dockerfile
rename to 1.7.0-couchperuser/Dockerfile
index 9436a38..d3c4df1 100644
--- a/1.6.1-couchperuser/Dockerfile
+++ b/1.7.0-couchperuser/Dockerfile
@@ -10,7 +10,7 @@
# License for the specific language governing permissions and limitations under
# the License.
-FROM couchdb:1.6.1
+FROM couchdb:1.7.0
MAINTAINER CouchDB Developers dev@couchdb.apache.org
diff --git a/1.6.1-couchperuser/docker-entrypoint.sh b/1.7.0-couchperuser/docker-entrypoint.sh
similarity index 100%
rename from 1.6.1-couchperuser/docker-entrypoint.sh
rename to 1.7.0-couchperuser/docker-entrypoint.sh
diff --git a/2.1.0/Dockerfile b/2.1.1/Dockerfile
similarity index 99%
rename from 2.1.0/Dockerfile
rename to 2.1.1/Dockerfile
index 4cfeaa3..be31eb2 100644
--- a/2.1.0/Dockerfile
+++ b/2.1.1/Dockerfile
@@ -80,7 +80,7 @@ RUN set -xe \
gpg --keyserver ha.pool.sks-keyservers.net --recv-keys "$key"; \
done
-ENV COUCHDB_VERSION 2.1.0
+ENV COUCHDB_VERSION 2.1.1
# Download dev dependencies
RUN buildDeps=' \
diff --git a/2.1.0/docker-entrypoint.sh b/2.1.1/docker-entrypoint.sh
similarity index 100%
rename from 2.1.0/docker-entrypoint.sh
rename to 2.1.1/docker-entrypoint.sh
diff --git a/2.1.0/local.ini b/2.1.1/local.ini
similarity index 100%
rename from 2.1.0/local.ini
rename to 2.1.1/local.ini
diff --git a/2.1.0/vm.args b/2.1.1/vm.args
similarity index 100%
rename from 2.1.0/vm.args
rename to 2.1.1/vm.args
diff --git a/README.md b/README.md
index 473eb25..3c6cb1a 100644
--- a/README.md
+++ b/README.md
@@ -4,14 +4,14 @@ Put the couch in a docker container and ship it anywhere.
If you're looking for a CouchDB with SSL support you can check out [klaemo/couchdb-ssl](https://index.docker.io/u/klaemo/couchdb-ssl/)
-- Version (stable): `CouchDB 1.6.1`, `Erlang 17.3`
-- Version (stable): `CouchDB 2.1.0`, `Erlang 17.3`
+- Version (stable): `CouchDB 1.7.0`, `Erlang 17.3`
+- Version (stable): `CouchDB 2.1.1`, `Erlang 17.3`
## Available tags
-- `1.6.1`: CouchDB 1.6.1
-- `1.6.1-couchperuser`: CouchDB 1.6.1 with couchperuser plugin
-- `latest`, `2.1.0`: CouchDB 2.1.0 single node (capable of running in a cluster)
+- `1.7.0`: CouchDB 1.7.0
+- `1.7.0-couchperuser`: CouchDB 1.7.0 with couchperuser plugin
+- `latest`, `2.1.1`: CouchDB 2.1.1 single node (capable of running in a cluster)
## Features
@@ -20,7 +20,7 @@ If you're looking for a CouchDB with SSL support you can check out [klaemo/couch
* runs everything as user `couchdb` (security ftw!)
* docker volume for data
-## Run (latest/2.1.0)
+## Run (latest/2.1.1)
Available on the docker registry as [apache/couchdb:latest](https://hub.docker.com/r/apache/couchdb/).
This is a build of the CouchDB 2.1 release. A data volume
@@ -45,15 +45,15 @@ Once running, you can visit the new admin interface at `http://dockerhost:5984/_
Note also that port 5986 is not exposed, as this can present *significant* security risks. We recommend either connecting to the node directly to access this port, via `docker exec -it <instance> /bin/bash` and accessing port 5986, or use of `--expose 5986` when launching the container, but **ONLY** if you do not expose this port publicly.
-## Run (1.6.1)
+## Run (1.7.0)
-Available as an official image on Docker Hub as [apache/couchdb:1.6.1](https://hub.docker.com/r/apache/couchdb/)
+Available as an official image on Docker Hub as [apache/couchdb:1.7.0](https://hub.docker.com/r/apache/couchdb/)
```bash
-[sudo] docker pull apache/couchdb:1.6.1
+[sudo] docker pull apache/couchdb:1.7.0
# expose it to the world on port 5984
-[sudo] docker run -d -p 5984:5984 --name couchdb apache/couchdb:1.6.1
+[sudo] docker run -d -p 5984:5984 --name couchdb apache/couchdb:1.7.0
curl http://localhost:5984
```
@@ -62,7 +62,7 @@ curl http://localhost:5984
```bash
# expose it to the world on port 5984 and use your current directory as the CouchDB Database directory
-[sudo] docker run -d -p 5984:5984 -v $(pwd):/usr/local/var/lib/couchdb --name couchdb apache/couchdb:1.6.1
+[sudo] docker run -d -p 5984:5984 -v $(pwd):/usr/local/var/lib/couchdb --name couchdb apache/couchdb:1.7.0
```
If you want to provide your own config, you can either mount a directory at `/usr/local/etc/couchdb`
@@ -79,7 +79,7 @@ This build includes the `couchperuser` plugin.
`couchperuser` is a CouchDB plugin daemon that creates per-user databases [github.com/etrepum/couchperuser](https://github.com/etrepum/couchperuser).
```
-[sudo] docker run -d -p 5984:5984 --name couchdb apache/couchdb:1.6.1-couchperuser
+[sudo] docker run -d -p 5984:5984 --name couchdb apache/couchdb:1.7.0-couchperuser
```
### In a developer cluster
--
To stop receiving notification emails like this one, please contact
"commits@couchdb.apache.org" <co...@couchdb.apache.org>.