Namespace
triliumnext
Image / Tag
trilium:feature-deployment_fixes
Content Digest
sha256:f824c9685bf6a6dba526a87f0d98e6f3a5215cf986285cc3d7b0946be1891325
Details
Created

2026-05-23 08:06:27 UTC

Size

132 MB

Content Digest
Labels
  • org.opencontainers.image.created
    2026-05-23T08:06:05.663Z
  • org.opencontainers.image.description
    Build your personal knowledge base with Trilium Notes
  • org.opencontainers.image.licenses
    AGPL-3.0
  • org.opencontainers.image.revision
    87ca7aefd0a6f89d565e273230a10bddefcfa269
  • org.opencontainers.image.source
    https://github.com/TriliumNext/Trilium
  • org.opencontainers.image.title
    Trilium
  • org.opencontainers.image.url
    https://github.com/TriliumNext/Trilium
  • org.opencontainers.image.version
    feature-deployment_fixes

Environment
NODE_VERSION

24.15.0

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

YARN_VERSION

1.22.22


Layers

[#000] sha256:6a0ac1617861a677b045b7ff88545213ec31c0ff08763195a70a4a5adda577bb - 2.8% (3.69 MB)

[#001] sha256:d7319775d025f51b0d7ee7f1224231b07f98b38a21909b5a7e2572e083dcb50a - 37.34% (49.1 MB)

[#002] sha256:3eebacc30b80dca2db4fba20ee2c2562ae69dbbdc307fcee75b49cf859cf63e4 - 0.91% (1.2 MB)

[#003] sha256:1ba15d4bb83a5da0244b0ca03df5cac1a19a914c5b876543cb1065d7fddbc9d5 - 0.0% (446 Bytes)

[#004] sha256:84bef3ec377effb6646640fb2eca8eefadd2681668265f38f4100083266c415a - 0.63% (849 KB)

[#005] sha256:6757d2fcd9c9d9b9545ccc2f1c4d10367b15cd5b422d56fd9620bce96b959a53 - 0.0% (125 Bytes)

[#006] sha256:8a61e2fa84f2f8c6eb1a621b0304944406ed709a05f8b900cc4988668f3bcfff - 55.49% (73 MB)

[#007] sha256:9373d257ebb2cd7775d2ef9378ba2ecdf6d13d13a5a65b7494ac081edf0b86bb - 0.0% (199 Bytes)

[#008] sha256:f7e1b11f1e493efdcf809bf5c7cc9e32614f04b19aa502ab1b69f4b483d3d96a - 2.83% (3.72 MB)

[#009] sha256:6ebf3058dea15bd91197d557b44a4e31914b39164105fb1adc38a9f0f2036792 - 0.0% (333 Bytes)

[#010] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)


History
2026-04-15 20:01:40 UTC (buildkit.dockerfile.v0)

ADD alpine-minirootfs-3.23.4-x86_64.tar.gz / # buildkit

2026-04-15 20:01:40 UTC (buildkit.dockerfile.v0)

CMD ["/bin/sh"]

2026-04-16 13:38:02 UTC (buildkit.dockerfile.v0)

ENV NODE_VERSION=24.15.0

2026-04-16 13:38:02 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c addgroup -g 1000 node && adduser -u 1000 -G node -s /bin/sh -D node && apk add --no-cache libstdc++ && apk add --no-cache --virtual .build-deps curl && ARCH= OPENSSL_ARCH='linux*' && alpineArch="$(apk --print-arch)" && case "${alpineArch##*-}" in x86_64) ARCH='x64' CHECKSUM="8b75070ed35ef8381548f4396d3cf957fd1449db063f288fe00b0cb64456477f" OPENSSL_ARCH=linux-x86_64;; x86) OPENSSL_ARCH=linux-elf;; aarch64) OPENSSL_ARCH=linux-aarch64;; arm*) OPENSSL_ARCH=linux-armv4;; ppc64le) OPENSSL_ARCH=linux-ppc64le;; s390x) OPENSSL_ARCH=linux-s390x;; *) ;; esac && if [ -n "${CHECKSUM}" ]; then set -eu; curl -fsSLO --compressed "https://unofficial-builds.nodejs.org/download/release/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz"; echo "$CHECKSUM node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz" | sha256sum -c - && tar -xJf "node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz" -C /usr/local --strip-components=1 --no-same-owner && ln -s /usr/local/bin/node /usr/local/bin/nodejs; else echo "Building from source" && apk add --no-cache --virtual .build-deps-full binutils-gold g++ gcc gnupg libgcc linux-headers make python3 py-setuptools && export GNUPGHOME="$(mktemp -d)" && for key in 5BE8A3F6C8A5C01D106C0AD820B1A390B168D356 DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7 CC68F5A3106FF448322E48ED27F5E38D5B0A215F 8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4 C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C 108F52B48DB57BB0CC439B2997B01419BD92F80A A363A499291CBBC940DD62E41F10027AF002F8B0 ; do { gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" && gpg --batch --fingerprint "$key"; } || { gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ; done && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION.tar.xz" && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc && gpgconf --kill all && rm -rf "$GNUPGHOME" && grep " node-v$NODE_VERSION.tar.xz\$" SHASUMS256.txt | sha256sum -c - && tar -xf "node-v$NODE_VERSION.tar.xz" && cd "node-v$NODE_VERSION" && ./configure && make -j$(getconf _NPROCESSORS_ONLN) V= && make install && apk del .build-deps-full && cd .. && rm -Rf "node-v$NODE_VERSION" && rm "node-v$NODE_VERSION.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt; fi && rm -f "node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz" && find /usr/local/include/node/openssl/archs -mindepth 1 -maxdepth 1 ! -name "$OPENSSL_ARCH" -exec rm -rf {} \; && apk del .build-deps && node --version && npm --version && rm -rf /tmp/* # buildkit

2026-04-16 13:38:02 UTC (buildkit.dockerfile.v0)

ENV YARN_VERSION=1.22.22

2026-04-16 13:38:06 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apk add --no-cache --virtual .build-deps-yarn curl gnupg tar && export GNUPGHOME="$(mktemp -d)" && for key in 6A010C5166006599AA17F08146C2130DFD2497F5 ; do { gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" && gpg --batch --fingerprint "$key"; } || { gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ; done && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" && gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && gpgconf --kill all && rm -rf "$GNUPGHOME" && mkdir -p /opt && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && apk del .build-deps-yarn && yarn --version && rm -rf /tmp/* # buildkit

2026-04-16 13:38:06 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh /usr/local/bin/ # buildkit

2026-04-16 13:38:06 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-entrypoint.sh"]

2026-04-16 13:38:06 UTC (buildkit.dockerfile.v0)

CMD ["node"]

2026-05-23 08:06:21 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apk add --no-cache su-exec shadow # buildkit

2026-05-23 08:06:21 UTC (buildkit.dockerfile.v0)

WORKDIR /usr/src/app

2026-05-23 08:06:22 UTC (buildkit.dockerfile.v0)

COPY ./dist /usr/src/app # buildkit

2026-05-23 08:06:22 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c rm -rf /usr/src/app/node_modules/better-sqlite3 # buildkit

2026-05-23 08:06:27 UTC (buildkit.dockerfile.v0)

COPY /usr/src/app/node_modules/better-sqlite3 /usr/src/app/node_modules/better-sqlite3 # buildkit

2026-05-23 08:06:27 UTC (buildkit.dockerfile.v0)

COPY ./start-docker.sh /usr/src/app # buildkit

2026-05-23 08:06:27 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c adduser -s /bin/false node; exit 0 # buildkit

2026-05-23 08:06:27 UTC (buildkit.dockerfile.v0)

EXPOSE [8080/tcp]

2026-05-23 08:06:27 UTC (buildkit.dockerfile.v0)

CMD ["sh" "./start-docker.sh"]

2026-05-23 08:06:27 UTC (buildkit.dockerfile.v0)

HEALTHCHECK {Test:[CMD-SHELL exec su-exec node node /usr/src/app/docker_healthcheck.cjs] Interval:0s Timeout:0s StartPeriod:10s StartInterval:0s Retries:0}

Details
Created

2026-05-23 08:07:03 UTC

Size

146 MB

Content Digest
Labels
  • org.opencontainers.image.created
    2026-05-23T08:06:19.456Z
  • org.opencontainers.image.description
    Build your personal knowledge base with Trilium Notes
  • org.opencontainers.image.licenses
    AGPL-3.0
  • org.opencontainers.image.revision
    87ca7aefd0a6f89d565e273230a10bddefcfa269
  • org.opencontainers.image.source
    https://github.com/TriliumNext/Trilium
  • org.opencontainers.image.title
    Trilium
  • org.opencontainers.image.url
    https://github.com/TriliumNext/Trilium
  • org.opencontainers.image.version
    feature-deployment_fixes

Environment
NODE_VERSION

22.21.0

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

YARN_VERSION

1.22.22


Layers

[#000] sha256:4b897c04dec26603bcc1b01b4283220cd1ffb208f0ec4c0db9e08dab58fcfb5d - 16.74% (24.4 MB)

[#001] sha256:03601cd48c234f67b558750ce12bb10b14284a4feabb37029701cf25ebdf2c74 - 0.0% (3.96 KB)

[#002] sha256:f43d0740bed047233b7b4ddcc9662613a33f1f9d7fcec5da2373727f1d69ebdf - 28.97% (42.2 MB)

[#003] sha256:9f4b2a8144dab3253b73569b2e5dfb8a4552ccade44287dc210471f0d0feeded - 1.14% (1.66 MB)

[#004] sha256:8c382f987e2883f1c13bcd98edb0d9f64f0e45e2fd1e0dc74fe2b9d21f20270b - 0.0% (448 Bytes)

[#005] sha256:67d4aa9b5ad3ebda6a1527d473fae177c1895267f303dd8c4a1653d9d391108e - 0.62% (926 KB)

[#006] sha256:d0a231c144d4504bf3da6d3e38dd2551e517d72aeeae66586696f4e8f4c846b1 - 0.0% (132 Bytes)

[#007] sha256:c66810be9aa11dca5ab6f1110b93efd9f214aa296e75bdbf0394e332e514ec4a - 50.15% (73 MB)

[#008] sha256:78580255a100a497022c590175d249a138f6b4fcc3fddbcec947202c5d679441 - 0.0% (205 Bytes)

[#009] sha256:e76737317dae40d292836cd3bd2147b3febad0cb387ae497c78e70a64622b49d - 2.38% (3.46 MB)

[#010] sha256:fe1f8899480a456e10a816eff4f48c318052abe9fe1b8bfa9eb0fcc10899dc1d - 0.0% (335 Bytes)


History
2025-10-20 00:00:00 UTC (debuerreotype 0.16)

# debian.sh --arch 'armhf' out/ 'bullseye' '@1760918400'

2025-10-21 04:06:16 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c groupadd --gid 1000 node && useradd --uid 1000 --gid node --shell /bin/bash --create-home node # buildkit

2025-10-21 04:06:16 UTC (buildkit.dockerfile.v0)

ENV NODE_VERSION=22.21.0

2025-10-21 04:06:16 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" && case "${dpkgArch##*-}" in amd64) ARCH='x64' OPENSSL_ARCH='linux-x86_64';; ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; i386) ARCH='x86' OPENSSL_ARCH='linux-elf';; *) echo "unsupported architecture"; exit 1 ;; esac && set -ex && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr xz-utils libatomic1 --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in 5BE8A3F6C8A5C01D106C0AD820B1A390B168D356 DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7 CC68F5A3106FF448322E48ED27F5E38D5B0A215F 8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4 C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C 108F52B48DB57BB0CC439B2997B01419BD92F80A A363A499291CBBC940DD62E41F10027AF002F8B0 ; do { gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" && gpg --batch --fingerprint "$key"; } || { gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ; done && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH.tar.xz" && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc && gpgconf --kill all && rm -rf "$GNUPGHOME" && grep " node-v$NODE_VERSION-linux-$ARCH.tar.xz\$" SHASUMS256.txt | sha256sum -c - && tar -xJf "node-v$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner && rm "node-v$NODE_VERSION-linux-$ARCH.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt && find /usr/local/include/node/openssl/archs -mindepth 1 -maxdepth 1 ! -name "$OPENSSL_ARCH" -exec rm -rf {} \; && apt-mark auto '.*' > /dev/null && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && ln -s /usr/local/bin/node /usr/local/bin/nodejs && node --version && npm --version && rm -rf /tmp/* # buildkit

2025-10-21 04:06:16 UTC (buildkit.dockerfile.v0)

ENV YARN_VERSION=1.22.22

2025-10-21 04:06:16 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in 6A010C5166006599AA17F08146C2130DFD2497F5 ; do { gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" && gpg --batch --fingerprint "$key"; } || { gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ; done && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" && gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && gpgconf --kill all && rm -rf "$GNUPGHOME" && mkdir -p /opt && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && apt-mark auto '.*' > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && yarn --version && rm -rf /tmp/* # buildkit

2025-10-21 04:06:16 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh /usr/local/bin/ # buildkit

2025-10-21 04:06:16 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-entrypoint.sh"]

2025-10-21 04:06:16 UTC (buildkit.dockerfile.v0)

CMD ["node"]

2026-05-23 08:06:48 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends gosu && rm -rf /var/lib/apt/lists/* /var/cache/apt/* # buildkit

2026-05-23 08:06:48 UTC (buildkit.dockerfile.v0)

WORKDIR /usr/src/app

2026-05-23 08:06:49 UTC (buildkit.dockerfile.v0)

COPY ./dist /usr/src/app # buildkit

2026-05-23 08:06:49 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c rm -rf /usr/src/app/node_modules/better-sqlite3 # buildkit

2026-05-23 08:07:03 UTC (buildkit.dockerfile.v0)

COPY /usr/src/app/node_modules/better-sqlite3 /usr/src/app/node_modules/better-sqlite3 # buildkit

2026-05-23 08:07:03 UTC (buildkit.dockerfile.v0)

COPY ./start-docker.sh /usr/src/app # buildkit

2026-05-23 08:07:03 UTC (buildkit.dockerfile.v0)

EXPOSE [8080/tcp]

2026-05-23 08:07:03 UTC (buildkit.dockerfile.v0)

CMD ["sh" "./start-docker.sh"]

2026-05-23 08:07:03 UTC (buildkit.dockerfile.v0)

HEALTHCHECK {Test:[CMD-SHELL exec gosu node node /usr/src/app/docker_healthcheck.cjs] Interval:0s Timeout:0s StartPeriod:10s StartInterval:0s Retries:0}

Details
Created

2026-05-23 08:07:22 UTC

Size

146 MB

Content Digest
Labels
  • org.opencontainers.image.created
    2026-05-23T08:06:33.341Z
  • org.opencontainers.image.description
    Build your personal knowledge base with Trilium Notes
  • org.opencontainers.image.licenses
    AGPL-3.0
  • org.opencontainers.image.revision
    87ca7aefd0a6f89d565e273230a10bddefcfa269
  • org.opencontainers.image.source
    https://github.com/TriliumNext/Trilium
  • org.opencontainers.image.title
    Trilium
  • org.opencontainers.image.url
    https://github.com/TriliumNext/Trilium
  • org.opencontainers.image.version
    feature-deployment_fixes

Environment
NODE_VERSION

22.21.0

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

YARN_VERSION

1.22.22


Layers

[#000] sha256:4b897c04dec26603bcc1b01b4283220cd1ffb208f0ec4c0db9e08dab58fcfb5d - 16.74% (24.4 MB)

[#001] sha256:03601cd48c234f67b558750ce12bb10b14284a4feabb37029701cf25ebdf2c74 - 0.0% (3.96 KB)

[#002] sha256:f43d0740bed047233b7b4ddcc9662613a33f1f9d7fcec5da2373727f1d69ebdf - 28.97% (42.2 MB)

[#003] sha256:9f4b2a8144dab3253b73569b2e5dfb8a4552ccade44287dc210471f0d0feeded - 1.14% (1.66 MB)

[#004] sha256:8c382f987e2883f1c13bcd98edb0d9f64f0e45e2fd1e0dc74fe2b9d21f20270b - 0.0% (448 Bytes)

[#005] sha256:45b321753d2a2568bfad11473263eb5e69a4374c05add1c6cc573011312a5f7e - 0.62% (926 KB)

[#006] sha256:75ac4b7e2ed849a68bd59a6efdc97332db95157656253ef2b13c7ff3e190d72a - 0.0% (133 Bytes)

[#007] sha256:367c0ec1de1dc7c95b3fb16b8a5c2d04acecf896aa9ce8753fb2d566d5e35efb - 50.15% (73 MB)

[#008] sha256:a5f629a710c5804c18f3e75cdd98a8cbfa19ca5500c46bb545aec99f2b952cfd - 0.0% (206 Bytes)

[#009] sha256:e6aa46ffdee14c5b7dafdc32cae4fa99b089ed8b6e74b020b356f9ea7e63e189 - 2.38% (3.46 MB)

[#010] sha256:1e65af06aa436bde2ed4bda77a12d99b018a23da91f8887c2e8c5a1ea89fa59e - 0.0% (339 Bytes)


History
2025-10-20 00:00:00 UTC (debuerreotype 0.16)

# debian.sh --arch 'armhf' out/ 'bullseye' '@1760918400'

2025-10-21 04:06:16 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c groupadd --gid 1000 node && useradd --uid 1000 --gid node --shell /bin/bash --create-home node # buildkit

2025-10-21 04:06:16 UTC (buildkit.dockerfile.v0)

ENV NODE_VERSION=22.21.0

2025-10-21 04:06:16 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" && case "${dpkgArch##*-}" in amd64) ARCH='x64' OPENSSL_ARCH='linux-x86_64';; ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; i386) ARCH='x86' OPENSSL_ARCH='linux-elf';; *) echo "unsupported architecture"; exit 1 ;; esac && set -ex && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr xz-utils libatomic1 --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in 5BE8A3F6C8A5C01D106C0AD820B1A390B168D356 DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7 CC68F5A3106FF448322E48ED27F5E38D5B0A215F 8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4 C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C 108F52B48DB57BB0CC439B2997B01419BD92F80A A363A499291CBBC940DD62E41F10027AF002F8B0 ; do { gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" && gpg --batch --fingerprint "$key"; } || { gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ; done && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH.tar.xz" && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc && gpgconf --kill all && rm -rf "$GNUPGHOME" && grep " node-v$NODE_VERSION-linux-$ARCH.tar.xz\$" SHASUMS256.txt | sha256sum -c - && tar -xJf "node-v$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner && rm "node-v$NODE_VERSION-linux-$ARCH.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt && find /usr/local/include/node/openssl/archs -mindepth 1 -maxdepth 1 ! -name "$OPENSSL_ARCH" -exec rm -rf {} \; && apt-mark auto '.*' > /dev/null && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && ln -s /usr/local/bin/node /usr/local/bin/nodejs && node --version && npm --version && rm -rf /tmp/* # buildkit

2025-10-21 04:06:16 UTC (buildkit.dockerfile.v0)

ENV YARN_VERSION=1.22.22

2025-10-21 04:06:16 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in 6A010C5166006599AA17F08146C2130DFD2497F5 ; do { gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" && gpg --batch --fingerprint "$key"; } || { gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ; done && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" && gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && gpgconf --kill all && rm -rf "$GNUPGHOME" && mkdir -p /opt && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && apt-mark auto '.*' > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && yarn --version && rm -rf /tmp/* # buildkit

2025-10-21 04:06:16 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh /usr/local/bin/ # buildkit

2025-10-21 04:06:16 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-entrypoint.sh"]

2025-10-21 04:06:16 UTC (buildkit.dockerfile.v0)

CMD ["node"]

2026-05-23 08:07:06 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends gosu && rm -rf /var/lib/apt/lists/* /var/cache/apt/* # buildkit

2026-05-23 08:07:06 UTC (buildkit.dockerfile.v0)

WORKDIR /usr/src/app

2026-05-23 08:07:07 UTC (buildkit.dockerfile.v0)

COPY ./dist /usr/src/app # buildkit

2026-05-23 08:07:07 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c rm -rf /usr/src/app/node_modules/better-sqlite3 # buildkit

2026-05-23 08:07:22 UTC (buildkit.dockerfile.v0)

COPY /usr/src/app/node_modules/better-sqlite3 /usr/src/app/node_modules/better-sqlite3 # buildkit

2026-05-23 08:07:22 UTC (buildkit.dockerfile.v0)

COPY ./start-docker.sh /usr/src/app # buildkit

2026-05-23 08:07:22 UTC (buildkit.dockerfile.v0)

EXPOSE [8080/tcp]

2026-05-23 08:07:22 UTC (buildkit.dockerfile.v0)

CMD ["sh" "./start-docker.sh"]

2026-05-23 08:07:22 UTC (buildkit.dockerfile.v0)

HEALTHCHECK {Test:[CMD-SHELL exec gosu node node /usr/src/app/docker_healthcheck.cjs] Interval:0s Timeout:0s StartPeriod:10s StartInterval:0s Retries:0}

Details
Created

2026-05-23 08:07:03 UTC

Size

154 MB

Content Digest
Labels
  • org.opencontainers.image.created
    2026-05-23T08:06:18.760Z
  • org.opencontainers.image.description
    Build your personal knowledge base with Trilium Notes
  • org.opencontainers.image.licenses
    AGPL-3.0
  • org.opencontainers.image.revision
    87ca7aefd0a6f89d565e273230a10bddefcfa269
  • org.opencontainers.image.source
    https://github.com/TriliumNext/Trilium
  • org.opencontainers.image.title
    Trilium
  • org.opencontainers.image.url
    https://github.com/TriliumNext/Trilium
  • org.opencontainers.image.version
    feature-deployment_fixes

Environment
NODE_VERSION

24.15.0

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

YARN_VERSION

1.22.22


Layers

[#000] sha256:2b99ba6638377be8e7e1e9a328ebb001513ab9f700c8168d404eed03437c7ce5 - 17.81% (27.4 MB)

[#001] sha256:48612840429f1c79480b5fccb206a2fb7d14f0e4cff1bbd08e97b723cf5ce778 - 0.0% (3.98 KB)

[#002] sha256:4a78e3720ca327a386e39f4dda14b89fb41b7d3f6b4114876d032f9be818f908 - 30.78% (47.4 MB)

[#003] sha256:d803a97eb0304366eb6ee1e2daa2f9d90fd75eb7dd57ed409db027e7eafd47d2 - 1.08% (1.66 MB)

[#004] sha256:aef630f9c75c5068190f80d29571917b60efaa30c4d4407ac576905c651f933f - 0.0% (447 Bytes)

[#005] sha256:8bf4212f2fd612a89ccaf3845e6139296e9d5c23586102e2c3200350ba6210fc - 0.58% (907 KB)

[#006] sha256:2189bccc541d58381b37aa17d08853023e6a202bdf351484852cbb8fe2c5b2ea - 0.0% (131 Bytes)

[#007] sha256:2b92f12bde5371b08dae0855444bfbb21eee0670322757dc79cbbdb57f0efd5d - 47.42% (73 MB)

[#008] sha256:de233998e490dcd3633391da5c88c69731d58639de337b2b4274efcddf40dab2 - 0.0% (206 Bytes)

[#009] sha256:372b913386d01f3406d18c7f3972ae1570198fca71e1367e6820dc28e707ec14 - 2.33% (3.59 MB)

[#010] sha256:b2fddf57987f3b4a896c6d313b187516874b9572d17fad2547dcd3aa9914542b - 0.0% (337 Bytes)


History
2026-05-18 00:00:00 UTC (debuerreotype 0.17)

# debian.sh --arch 'arm64' out/ 'bullseye' '@1779062400'

2026-05-19 23:31:23 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c groupadd --gid 1000 node && useradd --uid 1000 --gid node --shell /bin/bash --create-home node # buildkit

2026-05-19 23:31:42 UTC (buildkit.dockerfile.v0)

ENV NODE_VERSION=24.15.0

2026-05-19 23:31:42 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ARCH= OPENSSL_ARCH= && dpkgArch="$(dpkg --print-architecture)" && case "${dpkgArch##*-}" in amd64) ARCH='x64' OPENSSL_ARCH='linux-x86_64';; ppc64el) ARCH='ppc64le' OPENSSL_ARCH='linux-ppc64le';; s390x) ARCH='s390x' OPENSSL_ARCH='linux*-s390x';; arm64) ARCH='arm64' OPENSSL_ARCH='linux-aarch64';; armhf) ARCH='armv7l' OPENSSL_ARCH='linux-armv4';; i386) ARCH='x86' OPENSSL_ARCH='linux-elf';; *) echo "unsupported architecture"; exit 1 ;; esac && set -ex && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr xz-utils libatomic1 --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in 5BE8A3F6C8A5C01D106C0AD820B1A390B168D356 DD792F5973C6DE52C432CBDAC77ABFA00DDBF2B7 CC68F5A3106FF448322E48ED27F5E38D5B0A215F 8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 890C08DB8579162FEE0DF9DB8BEAB4DFCF555EF4 C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C 108F52B48DB57BB0CC439B2997B01419BD92F80A A363A499291CBBC940DD62E41F10027AF002F8B0 ; do { gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" && gpg --batch --fingerprint "$key"; } || { gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ; done && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH.tar.xz" && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc && gpgconf --kill all && rm -rf "$GNUPGHOME" && grep " node-v$NODE_VERSION-linux-$ARCH.tar.xz\$" SHASUMS256.txt | sha256sum -c - && tar -xJf "node-v$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner && rm "node-v$NODE_VERSION-linux-$ARCH.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt && find /usr/local/include/node/openssl/archs -mindepth 1 -maxdepth 1 ! -name "$OPENSSL_ARCH" -exec rm -rf {} \; && apt-mark auto '.*' > /dev/null && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && ln -s /usr/local/bin/node /usr/local/bin/nodejs && node --version && npm --version && rm -rf /tmp/* # buildkit

2026-05-19 23:31:42 UTC (buildkit.dockerfile.v0)

ENV YARN_VERSION=1.22.22

2026-05-19 23:31:53 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -ex && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install -y ca-certificates curl wget gnupg dirmngr --no-install-recommends && rm -rf /var/lib/apt/lists/* && export GNUPGHOME="$(mktemp -d)" && for key in 6A010C5166006599AA17F08146C2130DFD2497F5 ; do { gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" && gpg --batch --fingerprint "$key"; } || { gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" && gpg --batch --fingerprint "$key"; } ; done && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" && curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" && gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && gpgconf --kill all && rm -rf "$GNUPGHOME" && mkdir -p /opt && tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg && rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz && apt-mark auto '.*' > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; } && find /usr/local -type f -executable -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' | sort -u | xargs -r dpkg-query --search | cut -d: -f1 | sort -u | xargs -r apt-mark manual && apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false && yarn --version && rm -rf /tmp/* # buildkit

2026-05-19 23:31:53 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh /usr/local/bin/ # buildkit

2026-05-19 23:31:53 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["docker-entrypoint.sh"]

2026-05-19 23:31:53 UTC (buildkit.dockerfile.v0)

CMD ["node"]

2026-05-23 08:06:45 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends gosu && rm -rf /var/lib/apt/lists/* /var/cache/apt/* # buildkit

2026-05-23 08:06:45 UTC (buildkit.dockerfile.v0)

WORKDIR /usr/src/app

2026-05-23 08:06:46 UTC (buildkit.dockerfile.v0)

COPY ./dist /usr/src/app # buildkit

2026-05-23 08:06:46 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c rm -rf /usr/src/app/node_modules/better-sqlite3 # buildkit

2026-05-23 08:07:03 UTC (buildkit.dockerfile.v0)

COPY /usr/src/app/node_modules/better-sqlite3 /usr/src/app/node_modules/better-sqlite3 # buildkit

2026-05-23 08:07:03 UTC (buildkit.dockerfile.v0)

COPY ./start-docker.sh /usr/src/app # buildkit

2026-05-23 08:07:03 UTC (buildkit.dockerfile.v0)

EXPOSE [8080/tcp]

2026-05-23 08:07:03 UTC (buildkit.dockerfile.v0)

CMD ["sh" "./start-docker.sh"]

2026-05-23 08:07:03 UTC (buildkit.dockerfile.v0)

HEALTHCHECK {Test:[CMD-SHELL exec gosu node node /usr/src/app/docker_healthcheck.cjs] Interval:0s Timeout:0s StartPeriod:10s StartInterval:0s Retries:0}

Danger Zone
Delete Tag

Please be careful as this will not just delete the reference but also the actual content!

For example when you have latest and v1.2.3 both pointing to the same image
the deletion of latest will also permanently remove v1.2.3.

Delete