<p>I am trying to add the redisbloom module to a redis helm chart (bitnami/redis), or ideally the redis cluster chart (bitnami/redis-cluster).</p>
<pre><code># Chart.yaml

apiVersion: v2
name: my-app
description: My app and redis (with redisbloom module loaded)
type: application
version: 0.1.0
appVersion: 0.1.0
dependencies:
  - name: redis
    alias: redisbloom
    version: 12.1.1
    repository: https://charts.bitnami.com/bitnami
</code></pre>
<p>Copying the compiled module <code>redisbloom.so</code> to each pod, and then loading the module either post-start or with <code>master.command=redis-server --load-module=&lt;path&gt;/redisbloom.so</code> seemed like it could be a potential solution - however from the documentation I can't see how to copy the binary across for a chart.</p>
<p>I'm also not sure this would be enough on it's own for a master-slave or cluster situation to work. This <a href="https://github.com/RedisBloom/RedisBloom/issues/29" rel="nofollow noreferrer">Github issue</a> suggests it should be possible to do - but alas there is no documentation that I can find to support it.</p>
<p>Is it possible? Or would I need to create a custom chart, for example, using the RedisBloom docker image [redislabs/rebloom]?</p>
<p>Thanks in advance.</p>

<p>I think you need to build custom redis image based on bitnami image with required module and after that use extraVars var to specify your module like: --loadmodule /usr/lib/redis/modules/redisearch.so</p>
<p>My Dockerfile for that (I need to have redisearch module):</p>
<pre><code>#### My customization
FROM redislabs/redisearch:latest AS moduleimg
#### End of
FROM docker.io/bitnami/minideb:buster
LABEL maintainer &quot;Bitnami &lt;containers@bitnami.com&gt;&quot;

ENV HOME=&quot;/&quot; \
    OS_ARCH=&quot;amd64&quot; \
    OS_FLAVOUR=&quot;debian-10&quot; \
    OS_NAME=&quot;linux&quot;

COPY prebuildfs /
# Install required system packages and dependencies
RUN install_packages acl ca-certificates curl gzip libc6 libssl1.1 procps tar wget
RUN . /opt/bitnami/scripts/libcomponent.sh &amp;&amp; component_unpack &quot;wait-for-port&quot; &quot;1.0.0-3&quot; --checksum 7521d9a4f9e4e182bf32977e234026caa7b03759799868335bccb1edd8f8fd12
RUN . /opt/bitnami/scripts/libcomponent.sh &amp;&amp; component_unpack &quot;redis&quot; &quot;6.2.1-0&quot; --checksum c104089841a906f944e285828a580968608017340b67befaa1771646cbfdf6b3
RUN . /opt/bitnami/scripts/libcomponent.sh &amp;&amp; component_unpack &quot;gosu&quot; &quot;1.12.0-2&quot; --checksum 4d858ac600c38af8de454c27b7f65c0074ec3069880cb16d259a6e40a46bbc50
RUN chmod g+rwX /opt/bitnami
RUN ln -s /opt/bitnami/scripts/redis/entrypoint.sh /entrypoint.sh
RUN ln -s /opt/bitnami/scripts/redis/run.sh /run.sh

COPY rootfs /
RUN /opt/bitnami/scripts/redis/postunpack.sh
ENV BITNAMI_APP_NAME=&quot;redis&quot; \
    BITNAMI_IMAGE_VERSION=&quot;6.2.1-debian-10-r14&quot; \
    PATH=&quot;/opt/bitnami/common/bin:/opt/bitnami/redis/bin:$PATH&quot;

### My customization
RUN mkdir /opt/bitnami/redis/modules
COPY --from=moduleimg /usr/lib/redis/modules/redisearch.so* /opt/bitnami/redis/modules
### End of

EXPOSE 6379

USER 1001
ENTRYPOINT [ &quot;/opt/bitnami/scripts/redis/entrypoint.sh&quot; ]
CMD [ &quot;/opt/bitnami/scripts/redis/run.sh&quot; ]
</code></pre>
