This is an automated email from the ASF dual-hosted git repository.

jan pushed a commit to branch 3.4.0-nouveau
in repository https://gitbox.apache.org/repos/asf/couchdb-docker.git

commit f414d326f30a8e53d84845433da7da50224e2546
Author: Jan Lehnardt <[email protected]>
AuthorDate: Sat May 11 15:25:08 2024 +0200

    feat: wip Dockerfile for just Nouveau
---
 3.4.0-nouveau/Dockerfile   | 82 ++++++++++++++++++++++++++++++++++++++++++++++
 3.4.0-nouveau/nouveau.yaml | 27 +++++++++++++++
 2 files changed, 109 insertions(+)

diff --git a/3.4.0-nouveau/Dockerfile b/3.4.0-nouveau/Dockerfile
new file mode 100644
index 0000000..856764b
--- /dev/null
+++ b/3.4.0-nouveau/Dockerfile
@@ -0,0 +1,82 @@
+# 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:bullseye-slim
+
+LABEL maintainer="CouchDB Developers [email protected]"
+
+# Add CouchDB user account to make sure the IDs are assigned consistently
+RUN groupadd -g 5984 -r nouveau && useradd -u 5984 -d /opt/nouveau -g nouveau 
nouveau
+
+# be sure GPG and apt-transport-https are available and functional
+RUN set -ex; \
+    apt-get update; \
+    apt-get install -y --no-install-recommends \
+        apt-transport-https \
+        ca-certificates \
+        dirmngr \
+        gnupg \
+     ; \
+    rm -rf /var/lib/apt/lists/*
+
+# grab tini for signal handling and zombie reaping
+# see https://github.com/apache/couchdb-docker/pull/28#discussion_r141112407
+RUN set -eux; \
+    apt-get update; \
+    apt-get install -y --no-install-recommends tini; \
+    rm -rf /var/lib/apt/lists/*; \
+    tini --version
+
+# 
http://docs.couchdb.org/en/latest/install/unix.html#installing-the-apache-couchdb-packages
+ENV GPG_COUCH_KEY \
+# gpg: rsa8192 205-01-19 The Apache Software Foundation (Package repository 
signing key) <[email protected]>
+    390EF70BB1EA12B2773962950EE62FB37A00258D
+#RUN set -eux; \
+#    apt-get update; \
+#    apt-get install -y curl; \
+#    export GNUPGHOME="$(mktemp -d)"; \
+#    curl -fL -o keys.asc https://couchdb.apache.org/repo/keys.asc; \
+#    gpg --batch --import keys.asc; \
+#    gpg --batch --export "${GPG_COUCH_KEY}" > 
/usr/share/keyrings/couchdb-archive-keyring.gpg; \
+#    command -v gpgconf && gpgconf --kill all || :; \
+#    rm -rf "$GNUPGHOME"; \
+#    apt-key list; \
+#    apt purge -y --autoremove curl; \
+#    rm -rf /var/lib/apt/lists/*
+
+# until the .deb is available on jFrog, get it from here and place it next to 
the Dockerfile
+# 
https://clients.neighbourhood.ie/couchdb/couchdb-nouveau_3.3.3-022ffd1~debian-bookworm_amd64.deb
+COPY --chown=nouveau:nouveau 
couchdb-nouveau_3.3.3-022ffd1~debian-bookworm_amd64.deb 
/root/couchdb-nouveau_3.3.3-022ffd1~debian-bookworm_amd64.deb
+
+#RUN . /etc/os-release; \
+#    echo "deb [signed-by=/usr/share/keyrings/couchdb-archive-keyring.gpg] 
https://apache.jfrog.io/artifactory/couchdb-deb/ ${VERSION_CODENAME} main" | \
+#        tee /etc/apt/sources.list.d/couchdb.list >/dev/null
+
+# https://github.com/apache/couchdb-pkg/blob/master/debian/README.Debian
+RUN set -eux; \
+    apt-get update; \
+    \
+    echo "couchdb-nouveau couchdb-nouveau/enable select false" | 
debconf-set-selections; \
+    DEBIAN_FRONTEND=noninteractive apt-get install -y --allow-downgrades 
--allow-remove-essential --allow-change-held-packages \
+            /root/couchdb-nouveau_3.3.3-022ffd1~debian-bookworm_amd64.deb;
+
+# Add configuration
+#ENTRYPOINT ["tini", "--", "/docker-entrypoint.sh"]
+
+COPY --chown=nouveau:nouveau nouveau.yaml /opt/nouveau/etc/nouveau.yaml
+
+VOLUME /opt/nouveau/data
+
+# 5987: Nouveau App
+# 5988: Nouveau Admin
+EXPOSE 5987 5988
+CMD ["/opt/nouveau/bin/nouveau", "server", "/opt/nouveau/etc/nouveau.yaml"]
diff --git a/3.4.0-nouveau/nouveau.yaml b/3.4.0-nouveau/nouveau.yaml
new file mode 100644
index 0000000..5750942
--- /dev/null
+++ b/3.4.0-nouveau/nouveau.yaml
@@ -0,0 +1,27 @@
+maxIndexesOpen: 3000
+commitIntervalSeconds: 30
+idleSeconds: 60
+rootDir: ./data/nouveau
+
+logging:
+  level: INFO
+
+server:
+  applicationConnectors:
+    - type: http
+      bindHost: 0.0.0.0
+      port: 5987
+      useDateHeader: false
+  adminConnectors:
+    - type: http
+      bindHost: 0.0.0.0
+      port: 5988
+      useDateHeader: false
+  gzip:
+    includedMethods:
+      - GET
+      - POST
+  requestLog:
+    appenders:
+      - type: console
+        target: stderr

Reply via email to