Files
quickwit/Dockerfile
bd622a4599 build(deps): bump node from 24 to 26 (#6488)
* build(deps): bump node from 24 to 26

Bumps node from 24 to 26.

---
updated-dependencies:
- dependency-name: node
  dependency-version: '26'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix(docker): install yarn in node:26 ui-builder stage

* build: align Node.js 26 across development and CI

Update the devcontainer, release-build actions, both UI CI jobs,
and contributor instructions to match the Docker image's Node.js 26.

Bump @types/node to 26.6.4 and regenerate yarn.lock.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: david.yaffe <david.yaffe@datadoghq.com>
Co-authored-by: arthur.brongniart <arthur.brongniart@datadoghq.com>
2026-10-06 09:18:41 +00:00

80 lines
2.3 KiB
Docker

FROM node:26@sha256:e3ffe0cbaeebdcddbfe1ee7bca9b564a92863a8386d5b99a3d72677b3667b61d AS ui-builder
RUN npm install --global yarn@1.22.22
COPY quickwit/quickwit-ui /quickwit/quickwit-ui
WORKDIR /quickwit/quickwit-ui
RUN touch .gitignore_for_build_directory \
&& NODE_ENV=production make install build
FROM rust:bookworm@sha256:b5efaabfd787a695d2e46b37d3d9c54040e11f4c10bc2e714bbadbfcc0cd6c39 AS bin-builder
ARG CARGO_FEATURES=release-feature-set
ARG CARGO_PROFILE=release
ARG QW_COMMIT_DATE
ARG QW_COMMIT_HASH
ARG QW_COMMIT_TAGS
ARG LAMBDA_ZIP_PATH
ENV QW_COMMIT_DATE=$QW_COMMIT_DATE
ENV QW_COMMIT_HASH=$QW_COMMIT_HASH
ENV QW_COMMIT_TAGS=$QW_COMMIT_TAGS
ENV LAMBDA_ZIP_PATH=$LAMBDA_ZIP_PATH
RUN apt-get -y update \
&& apt-get -y install ca-certificates \
clang \
cmake \
libssl-dev \
llvm \
protobuf-compiler \
&& rm -rf /var/lib/apt/lists/*
COPY quickwit /quickwit
COPY config/quickwit.yaml /quickwit/config/quickwit.yaml
COPY --from=ui-builder /quickwit/quickwit-ui/build /quickwit/quickwit-ui/build
WORKDIR /quickwit
RUN rustup toolchain install
RUN echo "Building workspace with feature(s) '$CARGO_FEATURES' and profile '$CARGO_PROFILE'" \
&& RUSTFLAGS="--cfg tokio_unstable" \
cargo build \
-p quickwit-cli \
--features $CARGO_FEATURES \
--bin quickwit \
$(test "$CARGO_PROFILE" = "release" && echo "--release") \
&& echo "Copying binaries to /quickwit/bin" \
&& mkdir -p /quickwit/bin \
&& find target/$CARGO_PROFILE -maxdepth 1 -perm /a+x -type f -exec mv {} /quickwit/bin \;
FROM debian:bookworm-slim@sha256:56ff6d36d4eb3db13a741b342ec466f121480b5edded42e4b7ee850ce7a418ee AS quickwit
LABEL org.opencontainers.image.title="Quickwit"
LABEL maintainer="Quickwit, Inc. <hello@quickwit.io>"
LABEL org.opencontainers.image.vendor="Quickwit, Inc."
LABEL org.opencontainers.image.licenses="Apache-2.0"
RUN apt-get -y update \
&& apt-get -y install ca-certificates \
libssl3 \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /quickwit
RUN mkdir config qwdata
COPY --from=bin-builder /quickwit/bin/quickwit /usr/local/bin/quickwit
COPY --from=bin-builder /quickwit/config/quickwit.yaml /quickwit/config/quickwit.yaml
ENV QW_CONFIG=/quickwit/config/quickwit.yaml
ENV QW_DATA_DIR=/quickwit/qwdata
ENV QW_LISTEN_ADDRESS=0.0.0.0
RUN quickwit --version
ENTRYPOINT ["quickwit"]