duckdb-duckdb
FAILURE
199m 08s
History Source
SummaryIterations3Transcript39Dockerfile
01Iteration 1
WRITEWriteFile· step #1
0s
Dockerfile996 bytes written
text37 lines · 996 chars
# Build DuckDB from source in a single stage image based on Ubuntu 22.04

FROM ubuntu:22.04

ENV DEBIAN_FRONTEND=noninteractive

# Install build dependencies
RUN apt-get update \
    && apt-get install -y --no-install-recommends \
      ca-certificates \
      build-essential cmake \
      ninja-build \
      python3 python3-dev \
      git \
      pkg-config \
      zlib1g-dev libbz2-dev libreadline-dev \
      libcurl4-openssl-dev libssl-dev \
      liblz4-dev libzstd-dev libsnappy-dev \
      libboost-all-dev libicu-dev \
      libsqlite3-dev \
      libgomp1 \
      && rm -rf /var/lib/apt/lists/*

# Copy source and build
WORKDIR /duckdb
COPY . /duckdb/

# Build from source and install
RUN mkdir -p build && cd build \
    && cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_EXPORT_COMPILE_COMMANDS=ON .. \
    && cmake --build . -j$(nproc) \
    && cmake --build . --target install

# Default to running the DuckDB CLI in the container
ENTRYPOINT ["/usr/local/bin/duckdb"]
CMD ["--version"]
WRITEWriteFile· step #2
0s
.dockerignore178 bytes written
dockerignore19 lines · 178 chars
# Docker build ignore file for DuckDB repository
.git
.gitignore
node_modules
build
dist
*.o
*.a
*.so
*.log
__pycache__
*.pyc
*.pyo
.cache
.vscode
*.class
*.DS_Store
*.cmake.in
"
VERIFYVerifyBuild· step #3
10m 26s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
WRITEWriteFile· step #4
0s
Dockerfile1335 bytes written
text51 lines · 1335 chars
# Multi-stage Dockerfile for DuckDB

# Builder stage: build from source
FROM ubuntu:22.04 as builder

ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update \
    && apt-get install -y --no-install-recommends \
      ca-certificates \
      build-essential cmake \
      ninja-build \
      python3 python3-dev \
      git \
      pkg-config \
      zlib1g-dev libbz2-dev libreadline-dev \
      libcurl4-openssl-dev libssl-dev \
      liblz4-dev libzstd-dev libsnappy-dev \
      libboost-all-dev libicu-dev \
      libsqlite3-dev \
      libgomp1 \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /duckdb
COPY . /duckdb/

RUN mkdir -p build && cd build \
    && cmake -DCMAKE_BUILD_TYPE=Release \
             -DCMAKE_INSTALL_PREFIX=/usr/local \
             -DCMAKE_EXPORT_COMPILE_COMMANDS=ON .. \
    && cmake --build . -j$(nproc) \
    && cmake --build . --target install

# Runtime stage: minimal image with DuckDB installed
FROM ubuntu:22.04

ENV DEBIAN_FRONTEND=noninteractive

# Only install runtime dependencies needed for DuckDB to run
RUN apt-get update \
    && apt-get install -y --no-install-recommends ca-certificates \
    && rm -rf /var/lib/apt/lists/*

COPY --from=builder /usr/local /usr/local

WORKDIR /duckdb

# Expose the duckdb command-line interface when the container runs
ENTRYPOINT ["duckdb"]
CMD ["--version"]
VERIFYVerifyBuild· step #5
10m 26s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
WRITEWriteFile· step #6
0s
.dockerignore243 bytes written
dockerignore29 lines · 243 chars
# DuckDB Docker build ignore
.git
.gitignore
node_modules
build
dist
__pycache__
*.pyc
*.pyo
*.class
*.log
*.tar.gz
*.tar
*.zip
*.7z
*.rar
.dockerignore
*.o
*.a
*.so
**/.github
**/tests
**/benchmark
**/build-tools
**/venv
*.dll
*.dylib
*.so.*
VERIFYVerifyBuild· step #7
10m 30s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
WRITEWriteFile· step #8
0s
Dockerfile1373 bytes written
text51 lines · 1373 chars
# Multi-stage Dockerfile for DuckDB with Ninja for faster builds

# Builder stage: build from source
FROM ubuntu:22.04 as builder

ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update \
    && apt-get install -y --no-install-recommends \
      ca-certificates \
      build-essential cmake \
      ninja-build \
      python3 python3-dev \
      git \
      pkg-config \
      zlib1g-dev libbz2-dev libreadline-dev \
      libcurl4-openssl-dev libssl-dev \
      liblz4-dev libzstd-dev libsnappy-dev \
      libboost-all-dev libicu-dev \
      libsqlite3-dev \
      libgomp1 \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /duckdb
COPY . /duckdb/

RUN mkdir -p build && cd build \
    && cmake -G Ninja -DCMAKE_BUILD_TYPE=Release \
             -DCMAKE_INSTALL_PREFIX=/usr/local \
             -DCMAKE_EXPORT_COMPILE_COMMANDS=ON .. \
    && cmake --build . -j$(nproc) \
    && cmake --build . --target install

# Runtime stage: minimal image with DuckDB installed
FROM ubuntu:22.04

ENV DEBIAN_FRONTEND=noninteractive

# Only install runtime dependencies needed for DuckDB to run
RUN apt-get update \
    && apt-get install -y --no-install-recommends ca-certificates \
    && rm -rf /var/lib/apt/lists/*

COPY --from=builder /usr/local /usr/local

WORKDIR /duckdb

# Expose the duckdb command-line interface when the container runs
ENTRYPOINT ["duckdb"]
CMD ["--version"]
VERIFYVerifyBuild· step #9
10m 26s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
VERIFYVerifyBuild· step #10
10m 25s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
WRITEWriteFile· step #11
0s
Dockerfile1474 bytes written
text54 lines · 1474 chars
# Multi-stage Dockerfile for DuckDB with Ninja for faster builds

# Builder stage: build from source
FROM ubuntu:22.04 as builder

ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update \
    && apt-get install -y --no-install-recommends \
      ca-certificates \
      build-essential cmake \
      ninja-build \
      python3 python3-dev \
      git \
      pkg-config \
      zlib1g-dev libbz2-dev libreadline-dev \
      libcurl4-openssl-dev libssl-dev \
      liblz4-dev libzstd-dev libsnappy-dev \
      libboost-all-dev libicu-dev \
      libsqlite3-dev \
      libgomp1 \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /duckdb
COPY . /duckdb/

RUN mkdir -p build && cd build \
    && cmake -G Ninja -DCMAKE_BUILD_TYPE=Release \
             -DCMAKE_INSTALL_PREFIX=/usr/local \
             -DCMAKE_EXPORT_COMPILE_COMMANDS=ON .. \
    && cmake --build . -j$(nproc) \
    && cmake --build . --target install

# Runtime stage: minimal image with DuckDB installed
FROM ubuntu:22.04

ENV DEBIAN_FRONTEND=noninteractive

# Only install runtime dependencies needed for DuckDB to run
RUN apt-get update \
    && apt-get install -y --no-install-recommends ca-certificates \
    && rm -rf /var/lib/apt/lists/*

COPY --from=builder /usr/local /usr/local

# Ensure dynamic linker cache is updated for libraries under /usr/local
RUN ldconfig /usr/local/lib

WORKDIR /duckdb

# Expose the duckdb command-line interface when the container runs
ENTRYPOINT ["duckdb"]
CMD ["--version"]
VERIFYVerifyBuild· step #12
10m 29s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
02Iteration 2
WRITEWriteFile· step #1
1s
Dockerfile1035 chars
text30 lines · 1035 chars
FROM ubuntu:22.04 AS builder
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  build-essential cmake ninja-build python3-dev python3-pip git curl ca-certificates \
  && rm -rf /var/lib/apt/lists/*

WORKDIR /duckdb
COPY . .

RUN mkdir -p build && cd build && \
  cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local .. && \
  ninja -j$(nproc) install

FROM debian:bookworm-slim AS runtime
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  libstdc++6 libgcc-s1 libssl3 libcurl4 libzstd1 ca-certificates \
  && rm -rf /var/lib/apt/lists/*

# Copy installed DuckDB artifacts from the build stage
FROM --platform=$BUILDPLATFORM debian:bookworm-slim AS runtime-final
# The above line ensures platform compatibility for some builders
COPY --from=builder /usr/local /usr/local
RUN ldconfig
ENV LD_LIBRARY_PATH=/usr/local/lib${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
WORKDIR /duckdb
CMD ["/usr/local/bin/duckdb"]
WRITEWriteFile· step #2
0s
Dockerfile983 bytes written
text31 lines · 983 chars
FROM ubuntu:22.04 AS builder
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  build-essential cmake ninja-build python3 python3-pip git curl ca-certificates \
  && rm -rf /var/lib/apt/lists/*

WORKDIR /duckdb
COPY . .

RUN mkdir -p build && cd build && \
  cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local .. && \
  ninja -j$(nproc) install

# Optional: strip the binary to reduce size (best effort)
RUN strip /usr/local/bin/duckdb || true

FROM debian:bookworm-slim AS final
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  ca-certificates libstdc++6 libssl3 libcurl4 libzstd1 \
  && rm -rf /var/lib/apt/lists/*

# Copy installed DuckDB artifacts from the build stage
COPY --from=builder /usr/local /usr/local
RUN ldconfig
ENV LD_LIBRARY_PATH=/usr/local/lib${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
WORKDIR /duckdb
CMD ["/usr/local/bin/duckdb"]
WRITEWriteFile· step #3
0s
.dockerignore92 bytes written
dockerignore11 lines · 92 chars
# Ignore git repo and build outputs
.git
build/
*.o
*.a
*.so
*.log
.cache/
*.exe
Dockerfile
VERIFYVerifyBuild· step #4
10m 22s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
VERIFYVerifyBuild· step #5
10m 21s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
WRITEWriteFile· step #6
1s
Dockerfile1008 bytes written
text31 lines · 1008 chars
FROM ubuntu:22.04 AS builder
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  build-essential cmake ninja-build python3-dev python3-pip git curl ca-certificates \
  && rm -rf /var/lib/apt/lists/*

WORKDIR /duckdb
COPY . .

RUN mkdir -p build && cd build && \
  cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local .. && \
  ninja -j$(nproc) install

# Optional: strip the binary to reduce size (best effort)
RUN strip /usr/local/bin/duckdb || true

FROM ubuntu:22.04 AS runtime
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  ca-certificates libstdc++6 libssl3 libcurl4 libzstd1 libgcc-s1 \
  && rm -rf /var/lib/apt/lists/*

COPY --from=builder /usr/local/bin/duckdb /usr/local/bin/duckdb
COPY --from=builder /usr/local/lib /usr/local/lib
RUN ldconfig
ENV LD_LIBRARY_PATH=/usr/local/lib${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
WORKDIR /duckdb
CMD ["/usr/local/bin/duckdb"]
VERIFYVerifyBuild· step #7
10m 21s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
WRITEWriteFile· step #8
1s
Dockerfile980 bytes written
text31 lines · 980 chars
FROM ubuntu:22.04 AS builder
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  build-essential cmake ninja-build git curl ca-certificates \
  && rm -rf /var/lib/apt/lists/*

WORKDIR /duckdb
COPY . .

RUN mkdir -p build && cd build && \
  cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local .. && \
  ninja -j$(nproc) install

# Optional: strip the binary to reduce size (best effort)
RUN strip /usr/local/bin/duckdb || true

FROM ubuntu:22.04 AS final
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  ca-certificates libstdc++6 libssl3 libcurl4 libzstd1 libgcc1 \
  && rm -rf /var/lib/apt/lists/*

COPY --from=builder /usr/local/bin/duckdb /usr/local/bin/duckdb
COPY --from=builder /usr/local/lib /usr/local/lib
RUN ldconfig
ENV LD_LIBRARY_PATH=/usr/local/lib${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
WORKDIR /duckdb
CMD ["/usr/local/bin/duckdb"]
VERIFYVerifyBuild· step #9
10m 24s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
WRITEWriteFile· step #10
0s
Dockerfile936 bytes written
text30 lines · 936 chars
FROM ubuntu:22.04 AS builder
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  build-essential cmake ninja-build python3-dev python3-pip git curl ca-certificates \
  && rm -rf /var/lib/apt/lists/*

WORKDIR /duckdb
COPY . .

RUN mkdir -p build && cd build && \
  cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local .. && \
  ninja -j$(nproc) install

# Optional: strip the binary to reduce size (best effort)
RUN strip /usr/local/bin/duckdb || true

FROM ubuntu:22.04 AS runtime
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  ca-certificates libstdc++6 libssl3 libcurl4 libzstd1 libgcc-s1 \
  && rm -rf /var/lib/apt/lists/*

COPY --from=builder /usr/local /usr/local
RUN ldconfig
ENV LD_LIBRARY_PATH=/usr/local/lib${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
WORKDIR /duckdb
CMD ["/usr/local/bin/duckdb"]
VERIFYVerifyBuild· step #11
10m 19s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
WRITEWriteFile· step #12
1s
Dockerfile1030 bytes written
text32 lines · 1030 chars
FROM ubuntu:22.04 AS builder
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  build-essential cmake ninja-build python3-dev python3-pip git curl ca-certificates \
  && rm -rf /var/lib/apt/lists/*

WORKDIR /duckdb
COPY . .

RUN mkdir -p build && cd build && \
  cmake -G Ninja -DCMAKE_BUILD_TYPE=Release .. && \
  ninja -j$(nproc)

# Prune symbols to reduce final image size when possible
RUN strip /duckdb/build/release/duckdb || true

FROM ubuntu:22.04 AS runtime
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  ca-certificates libstdc++6 libssl3 libcurl4 libzstd1 libgcc-s1 \
  && rm -rf /var/lib/apt/lists/*

# Copy built artifacts
COPY --from=builder /duckdb/build/release/duckdb /usr/local/bin/duckdb
COPY --from=builder /duckdb/build/release /duckdb_build_release

ENV LD_LIBRARY_PATH=/duckdb_build_release/lib:/usr/local/lib${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
WORKDIR /duckdb
CMD ["/usr/local/bin/duckdb"]
VERIFYVerifyBuild· step #13
10m 34s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
WRITEWriteFile· step #14
0s
Dockerfile913 chars
text30 lines · 913 chars
FROM ubuntu:22.04 AS builder
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  build-essential cmake ninja-build python3-dev python3-pip git curl ca-certificates \
  && rm -rf /var/lib/apt/lists/*

WORKDIR /duckdb
COPY . .

RUN mkdir -p build && cd build && \
  cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local .. && \
  ninja -j$(nproc) install

# Optional: strip binaries to reduce size
RUN strip /usr/local/bin/duckdb || true

FROM ubuntu:22.04-slim AS final
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  ca-certificates libstdc++6 libssl3 libcurl4 libzstd1 \
  && rm -rf /var/lib/apt/lists/*

COPY --from=builder /usr/local /usr/local
RUN ldconfig
ENV LD_LIBRARY_PATH=/usr/local/lib${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
WORKDIR /duckdb
CMD ["/usr/local/bin/duckdb"]
WRITEWriteFile· step #15
0s
Dockerfile872 bytes written
text28 lines · 872 chars
FROM ubuntu:22.04 AS builder
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  build-essential cmake ninja-build python3-dev python3-pip git curl ca-certificates \
  && rm -rf /var/lib/apt/lists/*

WORKDIR /duckdb
COPY . .

RUN mkdir -p build && cd build && \
  cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local .. && \
  ninja -j"$(nproc)" install && \
  strip /usr/local/bin/duckdb || true

FROM ubuntu:22.04 AS runtime
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  ca-certificates libstdc++6 libssl3 libcurl4 libzstd1 \
  && rm -rf /var/lib/apt/lists/*

COPY --from=builder /usr/local /usr/local
RUN ldconfig
ENV LD_LIBRARY_PATH=/usr/local/lib${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
WORKDIR /duckdb
CMD ["/usr/local/bin/duckdb"]
VERIFYVerifyBuild· step #16
10m 17s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
03Iteration 3
WRITEWriteFile· step #1
1s
Dockerfile980 bytes written
text35 lines · 980 chars
# Multi-stage Dockerfile to build DuckDB from source and produce a minimal runtime image

FROM ubuntu:22.04 AS builder

ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  build-essential cmake ninja-build git curl ca-certificates \
  xz-utils pkg-config zlib1g-dev libssl-dev libbz2-dev liblz4-dev libzstd-dev \
  && rm -rf /var/lib/apt/lists/*

WORKDIR /duckdb

# Copy source
COPY . .

# Configure and build
RUN cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local
RUN cmake --build build -j$(nproc)
RUN cmake --install build

FROM ubuntu:22.04 AS runtime

ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y --no-install-recommends \
  libssl3 zlib1g libbz2-1.0 liblz4-1 libzstd1 ca-certificates \
  && rm -rf /var/lib/apt/lists/*

COPY --from=builder /usr/local /usr/local

ENV LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

WORKDIR /duckdb
CMD ["duckdb", "--version"]
WRITEWriteFile· step #2
0s
.dockerignore238 bytes written
dockerignore25 lines · 238 chars
# Ignore VCS and build artifacts
.git
build/
CMakeFiles/
cmake_install.cmake
CMakeCache.txt
Makefile
*.o
*.a
*.so
*.exe
*.log
*.tmp
*.swp
.DS_Store
*.pyc
__pycache__/
.cache/
.vscode/
.idea/
node_modules/
dist/
*/external/
*/third_party/
VERIFYVerifyBuild· step #3
10m 16s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
WRITEWriteFile· step #4
0s
Dockerfile1004 bytes written
text35 lines · 1004 chars
# Multi-stage Dockerfile to build DuckDB from source and produce a minimal runtime image

FROM ubuntu:22.04 AS builder

ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  build-essential cmake ninja-build git curl ca-certificates \
  xz-utils pkg-config zlib1g-dev libssl-dev libbz2-dev liblz4-dev libzstd-dev \
  && rm -rf /var/lib/apt/lists/*

WORKDIR /duckdb

# Copy source
COPY . .

# Configure and build using Ninja for speed
RUN cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local
RUN cmake --build build -j8
RUN cmake --install build

FROM ubuntu:22.04 AS runtime

ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y --no-install-recommends \
  libssl3 zlib1g libbz2-1.0 liblz4-1 libzstd1 ca-certificates \
  && rm -rf /var/lib/apt/lists/*

COPY --from=builder /usr/local /usr/local

ENV LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

WORKDIR /duckdb
CMD ["duckdb", "--version"]
VERIFYVerifyBuild· step #5
10m 21s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
WRITEWriteFile· step #6
0s
Dockerfile1170 bytes written
text37 lines · 1170 chars
# Multi-stage Dockerfile to build DuckDB from source and produce a minimal runtime image

FROM ubuntu:22.04 AS builder

ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  build-essential cmake ninja-build git curl ca-certificates \
  xz-utils pkg-config zlib1g-dev libssl-dev libbz2-dev liblz4-dev libzstd-dev \
  && rm -rf /var/lib/apt/lists/*

WORKDIR /duckdb

# Copy source
COPY . .

# Configure and build using Ninja for speed
RUN cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local
RUN cmake --build build -j$(nproc)
RUN cmake --install build

FROM ubuntu:22.04 AS runtime

ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y --no-install-recommends \
  libssl3 zlib1g libbz2-1.0 liblz4-1 libzstd1 ca-certificates \
  && rm -rf /var/lib/apt/lists/*

# Copy only necessary artifacts from the builder to minimize image size
COPY --from=builder /usr/local/bin/duckdb /usr/local/bin/duckdb
COPY --from=builder /usr/local/lib/libduckdb.so* /usr/local/lib/

ENV LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

WORKDIR /duckdb
CMD ["duckdb", "--version"]
VERIFYVerifyBuild· step #7
10m 30s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
WRITEWriteFile· step #8
0s
Dockerfile1324 bytes written
text41 lines · 1324 chars
# Multi-stage Dockerfile to build DuckDB from source and produce a minimal runtime image

FROM ubuntu:22.04 AS builder

ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  build-essential cmake ninja-build git curl ca-certificates \
  xz-utils pkg-config zlib1g-dev libssl-dev libbz2-dev liblz4-dev libzstd-dev \
  && rm -rf /var/lib/apt/lists/*

WORKDIR /duckdb

# Copy source
COPY . .

# Configure and build using Ninja for speed, with light-weight options to speed up build
RUN cmake -S . -B build -G Ninja \
  -DCMAKE_BUILD_TYPE=Release \
  -DENABLE_SANITIZER=OFF -DENABLE_THREAD_SANITIZER=OFF -DENABLE_UBSAN=OFF \
  -DWASM_ENABLED=FALSE \
  -DCMAKE_INSTALL_PREFIX=/usr/local
RUN cmake --build build -j$(nproc)
RUN cmake --install build

FROM ubuntu:22.04 AS runtime

ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y --no-install-recommends \
  libssl3 zlib1g libbz2-1.0 liblz4-1 libzstd1 ca-certificates \
  && rm -rf /var/lib/apt/lists/*

# Copy only necessary artifacts from the builder to minimize image size
COPY --from=builder /usr/local/bin/duckdb /usr/local/bin/duckdb
COPY --from=builder /usr/local/lib/libduckdb.so* /usr/local/lib/

ENV LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

WORKDIR /duckdb
CMD ["duckdb", "--version"]
VERIFYVerifyBuild· step #9
10m 17s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
WRITEWriteFile· step #10
1s
Dockerfile1384 bytes written
text43 lines · 1384 chars
# Multi-stage Dockerfile to build DuckDB from source and produce a minimal runtime image

FROM ubuntu:22.04 AS builder

ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
  build-essential cmake ninja-build git curl ca-certificates \
  xz-utils pkg-config zlib1g-dev libssl-dev libbz2-dev liblz4-dev libzstd-dev ccache \
  && rm -rf /var/lib/apt/lists/*

WORKDIR /duckdb

# Copy source
COPY . .

# Configure and build using Ninja for speed, with ccache enabled
RUN cmake -S . -B build -G Ninja \
  -DCMAKE_BUILD_TYPE=Release \
  -DENABLE_SANITIZER=OFF -DENABLE_THREAD_SANITIZER=OFF -DENABLE_UBSAN=OFF \
  -DWASM_ENABLED=FALSE \
  -DCMAKE_INSTALL_PREFIX=/usr/local \
  -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache

RUN cmake --build build -j$(nproc)
RUN cmake --install build

FROM ubuntu:22.04 AS runtime

ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y --no-install-recommends \
  libssl3 zlib1g libbz2-1.0 liblz4-1 libzstd1 ca-certificates \
  && rm -rf /var/lib/apt/lists/*

# Copy only necessary artifacts from the builder to minimize image size
COPY --from=builder /usr/local/bin/duckdb /usr/local/bin/duckdb
COPY --from=builder /usr/local/lib/libduckdb.so* /usr/local/lib/

ENV LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

WORKDIR /duckdb
CMD ["duckdb", "--version"]
VERIFYVerifyBuild· step #11
10m 21s
VerifyBuildbuild_failed
Build error
Build timed out after 600s