fuellabs-fuel-core
FAILURE
51m 32s
History Source
SummaryIterations3Transcript19Dockerfile
01Iteration 1
VERIFYVerifyBuild· step #1
0s
VerifyBuildrejected
Concerns: No Dockerfile found at repo root
WRITEWriteFile· step #2
1s
.dockerignore176 bytes written
dockerignore19 lines · 176 chars
# Git metadata
.git
.gitignore

# Cargo/build outputs
target
Cargo.lock

# Node projects (if present)
node_modules

# CI/workflow artifacts
ci
.github
*.log

# macOS
.DS_Store
WRITEWriteFile· step #3
1s
Dockerfile958 bytes written
text36 lines · 958 chars
FROM rust:1.94.0-bookworm AS builder

# Install build dependencies
RUN apt-get update && \
    apt-get install -y --no-install-recommends build-essential pkg-config libssl-dev ca-certificates curl && \
    rm -rf /var/lib/apt/lists/*

WORKDIR /workspace

# Cache dependencies by first copying manifest files
COPY Cargo.toml Cargo.lock ./
RUN cargo fetch

# Copy the rest of the source code
COPY . .

# Build the Fuel Core binary from the workspace (release)
RUN cargo build-fuel-core-bin-release

# Runtime stage
FROM debian:bookworm-slim

# Install runtime dependencies
RUN apt-get update && \
    apt-get install -y --no-install-recommends libssl3 ca-certificates && \
    rm -rf /var/lib/apt/lists/*

# Copy the built binary from the builder
COPY --from=builder /workspace/target/release/fuel-core /usr/local/bin/fuel-core

# Expose GraphQL port used by Fuel Core in many setups
EXPOSE 4000

ENTRYPOINT ["fuel-core"]
CMD ["run", "--db-type", "in-memory"]
WRITEWriteFile· step #4
0s
Dockerfile958 bytes written
text36 lines · 958 chars
FROM rust:1.94.0-bookworm AS builder

# Install build dependencies
RUN apt-get update && \
    apt-get install -y --no-install-recommends build-essential pkg-config libssl-dev ca-certificates curl && \
    rm -rf /var/lib/apt/lists/*

WORKDIR /workspace

# Cache dependencies by first copying manifest files
COPY Cargo.toml Cargo.lock ./
RUN cargo fetch

# Copy the rest of the source code
COPY . .

# Build the Fuel Core binary from the workspace (release)
RUN cargo build-fuel-core-bin-release

# Runtime stage
FROM debian:bookworm-slim

# Install runtime dependencies
RUN apt-get update && \
    apt-get install -y --no-install-recommends libssl3 ca-certificates && \
    rm -rf /var/lib/apt/lists/*

# Copy the built binary from the builder
COPY --from=builder /workspace/target/release/fuel-core /usr/local/bin/fuel-core

# Expose GraphQL port used by Fuel Core in many setups
EXPOSE 4000

ENTRYPOINT ["fuel-core"]
CMD ["run", "--db-type", "in-memory"]
VERIFYVerifyBuild· step #5
1m 02s
VerifyBuildbuild_failed
Build error
- Exact error message and exit code
  - Error message: ERROR: failed to build: failed to solve: failed to compute cache key: failed to calculate checksum of ref dm0crafjnw8l43ifl6uhde0ck::qmbs3n8lmavsk8ig192yw9msp: "/Cargo.lock": not found
  - Exit code: not shown in the log

- Failing command/step
  - [builder 4/7] COPY Cargo.toml Cargo.lock ./:

- Missing packages or files mentioned
  - "/Cargo.lock": not found
  - CopyIgnoredFile warning: Cargo.lock is excluded by .dockerignore (line 11)

- Version mismatch info
  - No explicit version mismatch reported. Images used: rust:1.94.0-bookworm and debian:bookworm-slim

Notes
- The build failed because Cargo.lock is excluded by .dockerignore, causing the COPY of Cargo.lock to fail with a missing file error.
WRITEWriteFile· step #6
0s
.dockerignore165 bytes written
dockerignore18 lines · 165 chars
# Git metadata
.git
.gitignore

# Cargo/build outputs
target

# Node projects (if present)
node_modules

# CI/workflow artifacts
ci
.github
*.log

# macOS
.DS_Store
VERIFYVerifyBuild· step #7
1m 13s
VerifyBuildbuild_failed
Build error
- Exact error message and exit code
  - error: failed to load manifest for workspace member `/workspace/benches`
    referenced by workspace at `/workspace/Cargo.toml`
    
    Caused by:
      failed to read `/workspace/benches/Cargo.toml`
    
    Caused by:
      No such file or directory (os error 2)
  - process "/bin/sh -c cargo fetch" did not complete successfully: exit code: 101

- Failing command/step
  - [builder 5/7] RUN cargo fetch
  - In Dockerfile: the line executing cargo fetch is the failing step (Cargo.toml and Cargo.lock were copied just prior)

- Missing packages or files mentioned
  - Missing file: /workspace/benches/Cargo.toml (workspace declares benches as a member but that path/file does not exist)

- Version mismatch info
  - No version mismatch information is present in the log. The failure is due to a missing workspace member file, not a version conflict.
WRITEWriteFile· step #8
0s
Dockerfile1084 bytes written
text39 lines · 1084 chars
FROM rust:1.94.0-bookworm AS builder

# Install build dependencies
RUN apt-get update \
    && apt-get install -y --no-install-recommends build-essential pkg-config libssl-dev ca-certificates curl \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /workspace

# Copy the full source code
COPY . .

# Build only the Fuel Core binary from the workspace (release) using its manifest path
RUN cargo build --release --manifest-path bin/fuel-core/Cargo.toml

# Runtime stage
FROM debian:bookworm-slim

# Install runtime dependencies
RUN apt-get update \
    && apt-get install -y --no-install-recommends libssl3 ca-certificates \
    && rm -rf /var/lib/apt/lists/*

# Create a non-root user for runtime (optional but recommended)
RUN useradd -m fuel && \
    mkdir -p /home/fuel/.local/bin && \
    chown -R fuel:fuel /home/fuel

# Copy the built binary from the builder
COPY --from=builder /workspace/target/release/fuel-core /usr/local/bin/fuel-core

USER fuel

# Expose GraphQL port used by Fuel Core in many setups
EXPOSE 4000

ENTRYPOINT ["fuel-core"]
CMD ["run", "--db-type", "in-memory"]
VERIFYVerifyBuild· step #9
9m 08s
VerifyBuildbuild_failed
Build error
Failing step
- [builder 5/5] RUN cargo build --release --manifest-path bin/fuel-core/Cargo.toml

Exact error message and exit code
- error: failed to run custom build command for `librocksdb-sys v0.11.0+8.1.1`

- Caused by:
  - process didn't exit successfully: `/workspace/target/release/build/librocksdb-sys-4196eafa8cf101a2/build-script-build` (exit status: 101)

- --- stderr (excerpt) ---
  - thread 'main' (9132) panicked at /usr/local/cargo/registry/.../bindgen-0.65.1/lib.rs:603:31:
  - Unable to find libclang: "couldn't find any valid shared libraries matching: ['libclang.so', 'libclang-*.so', 'libclang.so.*', 'libclang-*.so.*'], set the `LIBCLANG_PATH` environment variable to a path where one of these files can be found (invalid: [])"
  - note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Missing packages/files / version info
- Missing/libclang: libclang libraries not found in the image; LIBCLANG_PATH not set.
- This is a build-time requirement for bindgen used by the librocksdb-sys crate.

Version context
- info: syncing channel updates for 1.93.0-x86_64-unknown-linux-gnu
- info: latest update on 2026-01-22 for version 1.93.0 (254b59607 2026-01-19)
- This indicates the build is using Rust toolchain around 1.93.0 (not a CLANG-specific version), but the failure is due to missing libclang.
WRITEWriteFile· step #10
0s
Dockerfile1254 bytes written
text51 lines · 1254 chars
FROM rust:1.94.0-bookworm AS builder

# Install build dependencies including clang for bindgen
RUN apt-get update \
    && apt-get install -y --no-install-recommends \
        build-essential \
        pkg-config \
        libssl-dev \
        ca-certificates \
        curl \
        clang \
        libclang-dev \
        librocksdb-dev \
        libsnappy-dev \
        zlib1g-dev \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /workspace

# Copy the full source code
COPY . .

# Build only the Fuel Core binary from the workspace (release)
RUN cargo build --release --manifest-path bin/fuel-core/Cargo.toml

# Runtime stage
FROM debian:bookworm-slim

# Install runtime dependencies
RUN apt-get update \
    && apt-get install -y --no-install-recommends \
        libssl3 \
        ca-certificates \
    && rm -rf /var/lib/apt/lists/*

# Create a non-root user for runtime (recommended)
RUN useradd -m fuel && \
    mkdir -p /home/fuel/.local/bin && \
    chown -R fuel:fuel /home/fuel

# Copy the built binary from the builder
COPY --from=builder /workspace/target/release/fuel-core /usr/local/bin/fuel-core

USER fuel

# Expose GraphQL port used by Fuel Core in many setups
EXPOSE 4000

ENTRYPOINT ["fuel-core"]
CMD ["run", "--db-type", "in-memory"]
VERIFYVerifyBuild· step #11
10m 31s
VerifyBuildbuild_failed
Build error
Build timed out after 600s
02Iteration 2
WRITEWriteFile· step #1
0s
Dockerfile1172 bytes written
text47 lines · 1172 chars
# Builder stage: compile Fuel Core binary from source
FROM rust:1.94.0-bookworm AS builder

# Install build dependencies
RUN apt-get update && \
    apt-get install -y --no-install-recommends \
        build-essential \
        pkg-config \
        libssl-dev \
        curl \
        ca-certificates && \
    rm -rf /var/lib/apt/lists/*

# Set working directory to repo root
WORKDIR /workspace

# Copy manifests first to leverage Docker cache
COPY Cargo.toml Cargo.lock ./

# Fetch dependencies (to cache layer)
RUN cargo fetch

# Copy the rest of the repo
COPY . .

# Build only the Fuel Core binary (release)
RUN cargo build --release --bin fuel-core

# Runtime stage: minimal base image
FROM debian:bookworm-slim AS runtime

# Install runtime dependencies
RUN apt-get update && \
    apt-get install -y --no-install-recommends \
        ca-certificates \
        libssl3 \
        libsnappy1v5 \
        liblz4-1 \
        libzstd1 && \
    rm -rf /var/lib/apt/lists/*

# Copy the built binary from the builder stage
COPY --from=builder /workspace/target/release/fuel-core /usr/local/bin/fuel-core

# Default command to verify the build
CMD ["fuel-core", "--version"]
WRITEWriteFile· step #2
0s
.dockerignore70 bytes written
dockerignore8 lines · 70 chars
target/
.git/
node_modules/
dist/
.gitignore
Dockerfile
.dockerignore
VERIFYVerifyBuild· step #3
48s
VerifyBuildbuild_failed
Build error
- Failing step: builder 5/7 RUN cargo fetch
- Exit code: 101
- Exact error message (as reported in log):
  error: failed to load manifest for workspace member `/workspace/benches` referenced by workspace at `/workspace/Cargo.toml`
  Caused by:
    failed to read `/workspace/benches/Cargo.toml`
  No such file or directory (os error 2)
- Missing packages/files mentioned:
  - The file /workspace/benches/Cargo.toml is missing (causing the manifest read failure for the workspace member).
  - The workspace at /workspace/Cargo.toml references /workspace/benches, which does not exist.
- Version/image context (no explicit mismatch noted):
  - Base images shown: rust:1.94.0-bookworm and debian:bookworm-slim
  - No specific version mismatch error is present in the log; the failure is due to a missing workspace member file.
WRITEWriteFile· step #4
0s
Dockerfile1099 bytes written
text41 lines · 1099 chars
# Builder stage: compile Fuel Core binary from source
FROM rust:1.94.0-bookworm AS builder

# Install build dependencies
RUN apt-get update && \
    apt-get install -y --no-install-recommends \
        build-essential \
        pkg-config \
        libssl-dev \
        curl \
        ca-certificates && \
    rm -rf /var/lib/apt/lists/*

# Set working directory to repo root
WORKDIR /workspace

# Copy the entire repository (to ensure workspace manifests are present for cargo fetch)
COPY . .

# Build only the Fuel Core binary (release)
RUN cargo build --release --bin fuel-core

# Runtime stage: minimal base image
FROM debian:bookworm-slim AS runtime

# Install runtime dependencies
RUN apt-get update && \
    apt-get install -y --no-install-recommends \
        ca-certificates \
        libssl3 \
        libsnappy1v5 \
        liblz4-1 \
        libzstd1 && \
    rm -rf /var/lib/apt/lists/*

# Copy the built binary from the builder stage
COPY --from=builder /workspace/target/release/fuel-core /usr/local/bin/fuel-core

# Default command to verify the build
CMD ["fuel-core", "--version"]
03Iteration 3
WRITEWriteFile· step #1
0s
Dockerfile1396 bytes written
text49 lines · 1396 chars
# Multistage Dockerfile to build and run Fuel Core from source

# -------- Builder Stage --------
FROM rust:1.94.0-bookworm AS builder

# Install build dependencies
RUN apt-get update && \
    apt-get install -y --no-install-recommends \
        build-essential \
        pkg-config \
        libssl-dev \
        ca-certificates \
        curl && \
    rm -rf /var/lib/apt/lists/*

WORKDIR /workspace

# Pre-copy Cargo manifests to leverage Docker cache
COPY Cargo.toml Cargo.lock ./

# Fetch dependencies (if Cargo.lock is missing, cargo will proceed)
RUN if [ -f Cargo.lock ]; then cargo fetch --locked; else cargo fetch; fi

# Copy the rest of the source
COPY . .

# Build the Fuel Core binary (release)
RUN cargo build-fuel-core-bin-release

# -------- Runtime Stage --------
FROM debian:bookworm-slim AS runtime

# Install minimal runtime dependencies
RUN apt-get update && \
    apt-get install -y --no-install-recommends \
        ca-certificates \
        libssl3 \
        # Ensure the certificate store is up to date
        && rm -rf /var/lib/apt/lists/*

# Copy the built binary from the builder stage
COPY --from=builder /workspace/target/release/fuel-core /usr/local/bin/fuel-core

# Expose the default Fuel GraphQL port (as used by fuel-core run)
EXPOSE 4000

# Default command to run Fuel Core in in-memory mode for development
CMD ["fuel-core", "run", "--db-type", "in-memory"]
WRITEWriteFile· step #2
0s
.dockerignore85 bytes written
dockerignore6 lines · 85 chars
# Ignore version control and target/build artifacts
.git
target
**/target
Cargo.lock
VERIFYVerifyBuild· step #3
51s
VerifyBuildbuild_failed
Build error
Failing step and exit code
- Step: [builder 5/7] RUN if [ -f Cargo.lock ]; then cargo fetch --locked; else cargo fetch; fi
- Exit code: 101
- Exact failure message (from logs):
  error: failed to load manifest for workspace member `/workspace/benches`
  referenced by workspace at `/workspace/Cargo.toml`

  Caused by:
    failed to read `/workspace/benches/Cargo.toml`

  Caused by:
    No such file or directory (os error 2)

- Process detail:
  process "/bin/sh -c if [ -f Cargo.lock ]; then cargo fetch --locked; else cargo fetch; fi" did not complete successfully: exit code: 101

Missing packages or files mentioned
- Missing file: /workspace/benches/Cargo.toml (No such file or directory)

Version and environment context (no explicit mismatch error provided)
- Base images shown:
  - Debian: bookworm-slim
  - Rust: 1.94.0-bookworm
- Other environment details present in logs (e.g., OpenSSL/libssl3, ca-certificates) but no explicit version mismatch error reported.
WRITEWriteFile· step #4
0s
Dockerfile1193 bytes written
text42 lines · 1193 chars
# Multistage Dockerfile to build and run Fuel Core from source

# -------- Builder Stage --------
FROM rust:1.94.0-bookworm AS builder

# Install build dependencies
RUN apt-get update && \
    apt-get install -y --no-install-recommends \
        build-essential \
        pkg-config \
        libssl-dev \
        ca-certificates \
        curl && \
    rm -rf /var/lib/apt/lists/*

WORKDIR /workspace

# Copy the entire repository to the builder
COPY . .

# Build and install the Fuel Core binary into /usr/local (static-like install path)
RUN cargo install --path bin/fuel-core --locked --root /usr/local

# -------- Runtime Stage --------
FROM debian:bookworm-slim AS runtime

# Install minimal runtime dependencies
RUN apt-get update && \
    apt-get install -y --no-install-recommends \
        ca-certificates \
        libssl3 \
        && rm -rf /var/lib/apt/lists/*

# Copy the built binary from the builder stage
COPY --from=builder /usr/local/bin/fuel-core /usr/local/bin/fuel-core

# Expose the default Fuel GraphQL port (as used by fuel-core run)
EXPOSE 4000

# Default command to run Fuel Core in in-memory mode for development
CMD ["fuel-core", "run", "--db-type", "in-memory"]