mirror of
https://github.com/hanzoai/bootnode.git
synced 2026-10-25 02:31:30 +00:00
- Add Explorer product page with branded block explorer deployment, contract verification, Etherscan-compatible API, and multi-chain support - Add MPC product page with deep Lux MPC integration: CGGMP21 (ECDSA), FROST (EdDSA), LSS resharing, 15+ chain support, threshold signing API - Update landing page with 6-product grid (Node, Data, Wallets, Explorer, MPC, Rollups) and 8 API cards including Explorer API and MPC Signing - Update navbar and command menu with Explorer and MPC products - Add Lux fleet management dashboard, observability, and services pages - Add AI chat component and unified navigation with org switcher - Add Kubernetes operator (Rust) for multi-chain node lifecycle management - Add Lux Helm charts with genesis configs for devnet/testnet/mainnet - Add docker-release.yml CI/CD pipeline for automated DOKS deployment - Add monitoring, network policies, web deployments, and ingress updates - Refactor API: fleet management, billing tracker, observability endpoints - Update brand config, API client, and infrastructure manifests
53 lines
1.2 KiB
Docker
53 lines
1.2 KiB
Docker
# Multi-stage build for bootnode-operator
|
|
# Stage 1: Build the Rust binary
|
|
FROM rust:1.88-bookworm AS builder
|
|
|
|
RUN apt-get update && apt-get install -y \
|
|
pkg-config \
|
|
libssl-dev \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
WORKDIR /build
|
|
|
|
# Limit parallelism to reduce memory usage
|
|
ENV CARGO_BUILD_JOBS=2
|
|
|
|
# Copy manifest first for dependency caching
|
|
COPY Cargo.toml Cargo.lock ./
|
|
|
|
# Create dummy source for dependency caching
|
|
RUN mkdir -p src/drivers && \
|
|
echo "fn main() {}" > src/main.rs
|
|
|
|
# Build dependencies only (cached layer)
|
|
RUN cargo build --release 2>/dev/null || true
|
|
|
|
# Copy actual source code
|
|
COPY src/ src/
|
|
|
|
# Touch to invalidate cache
|
|
RUN touch src/main.rs
|
|
|
|
# Build the operator
|
|
RUN cargo build --release
|
|
|
|
# Stage 2: Minimal runtime image
|
|
FROM debian:bookworm-slim
|
|
|
|
RUN apt-get update && apt-get install -y \
|
|
ca-certificates \
|
|
libssl3 \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# Create non-root user
|
|
RUN groupadd -f bootnode && useradd -r -s /bin/false -g bootnode bootnode
|
|
|
|
COPY --from=builder /build/target/release/bootnode-operator /usr/local/bin/bootnode-operator
|
|
RUN chmod +x /usr/local/bin/bootnode-operator
|
|
|
|
USER bootnode
|
|
|
|
EXPOSE 8080 8081
|
|
|
|
ENTRYPOINT ["/usr/local/bin/bootnode-operator"]
|