mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-09-01 09:43:32 +02:00
* full commit obsidian * updates on readme and clarification for addons community for easy tag on issues * becouse of https://github.com/alexbelgium/hassio-addons/issues/2966 * restore build.yaml for obsidian addons --------- Co-authored-by: ToledoEM <8144940+ToledoEM@users.noreply.github.com>
49 lines
1.6 KiB
Docker
49 lines
1.6 KiB
Docker
# Global build args must be declared before the first FROM to be usable there.
|
|
ARG BUILD_FROM=jc21/nginx-proxy-manager:2.15.1
|
|
ARG COUCHDB_FROM=couchdb:3.5.2
|
|
|
|
# Stage 1: source of the CouchDB runtime. CouchDB ships a self-contained
|
|
# release under /opt/couchdb, including its own Erlang runtime (erts-*), so
|
|
# it can be lifted into another image without installing Erlang separately.
|
|
FROM ${COUCHDB_FROM} AS couchdb
|
|
|
|
# Stage 2: Nginx Proxy Manager, which supplies s6-overlay and the admin UI.
|
|
# Both images are Debian trixie, so the CouchDB release is binary compatible.
|
|
FROM ${BUILD_FROM}
|
|
|
|
# hadolint ignore=DL3008
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends \
|
|
ca-certificates \
|
|
curl \
|
|
jq \
|
|
openssl \
|
|
ripgrep \
|
|
libicu76 \
|
|
libmozjs-128-0 \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
COPY --from=couchdb /opt/couchdb /opt/couchdb
|
|
COPY --from=couchdb /usr/local/bin/docker-entrypoint.sh /docker-entrypoint.sh
|
|
|
|
# CouchDB refuses to run as root and expects to own its runtime directories.
|
|
RUN groupadd -g 5984 couchdb \
|
|
&& useradd -u 5984 -g couchdb -d /opt/couchdb -s /bin/bash couchdb \
|
|
&& chown -R couchdb:couchdb /opt/couchdb \
|
|
&& chmod +x /docker-entrypoint.sh
|
|
|
|
COPY run.sh /run.sh
|
|
COPY rootfs /
|
|
RUN chmod +x /run.sh \
|
|
&& chmod +x /etc/s6-overlay/s6-rc.d/couchdb/run \
|
|
&& chmod +x /etc/s6-overlay/s6-rc.d/couchdb/finish \
|
|
&& chmod +x /etc/s6-overlay/s6-rc.d/addon-init/script
|
|
|
|
ARG BUILD_VERSION
|
|
LABEL \
|
|
io.hass.version="${BUILD_VERSION}" \
|
|
io.hass.type="addon" \
|
|
io.hass.arch="aarch64|amd64"
|
|
|
|
ENTRYPOINT ["/init"]
|