Hello CouchDB community,

I am pleased to announce that official container images for Clouseau —
the full-text search engine used by Apache CouchDB — are now published
and available on the GitHub Container Registry.


GETTING THE IMAGE
-----------------

  docker pull ghcr.io/cloudant-labs/clouseau:3.5

Images are built for linux/amd64 and linux/arm64 and are tagged with
the full version (3.5.0), minor version (3.5), major version (3),
and latest.


WHAT'S IN THE IMAGE
-------------------

The image is based on eclipse-temurin:21-jre-ubi10-minimal (Red Hat
UBI 10), pinned to a SHA digest for reproducibility. It runs as a
non-root clouseau user under /opt/couchdb-search, with the following
JVM defaults:

  - -Xmx2G / -Xms1600M (configurable via JAVA_XMX / JAVA_XMS env vars)
  - G1GC with -XX:+ParallelRefProcEnabled
  - DNS TTL caching (-Dsun.net.inetaddr.ttl=30)
  - Erlang cookie read from a file secret 
(-Dcookie.file=/run/secrets/erlang.cookie)


DOCKER COMPOSE EXAMPLE
----------------------

A ready-to-use compose.yaml is available that wires CouchDB and
Clouseau together. Both services share the same container network
stack (network_mode: "service:couchdb"), which is how they communicate
in a typical deployment:
  https://github.com/cloudant-labs/clouseau/blob/main/docker/compose.yaml


MAKE TARGETS
------------

The repository exposes Make targets for the full lifecycle:

  Command                       Description
  ----------------------------  -----------------------------------------
  make generate-erlang-cookie   Generate a secure shared Erlang cookie
  make docker-build             Build the image from a published release
  make docker-compose-up        Start CouchDB + Clouseau via Docker Compose
  make docker-test              Full local run: mango + Elixir search tests

Full documentation:
  https://github.com/cloudant-labs/clouseau/blob/main/docker/README.md


IMAGE FRESHNESS
---------------

Images are published automatically on each Clouseau release.
Additionally, when the base image SHA is updated in the Dockerfile
(e.g. by Dependabot), the image (major, minor, latest) is automatically
rebuilt and republished — so the published image stays current with
upstream OS and JRE security patches between releases.


Feedback and contributions are welcome on the GitHub repository:
  https://github.com/cloudant-labs/clouseau

Best regards,
Ildikó Eigel

Reply via email to