Files
simple-object-server/Dockerfile
Your Name 66cfde013c Db
2025-05-03 09:36:54 +12:00

37 lines
701 B
Docker

FROM alpine:latest AS builder
# Install build dependencies
RUN apk add --no-cache \
build-base \
cmake \
git \
musl-dev \
sqlite-dev
# Copy source code
COPY . /src
WORKDIR /src
# Build
RUN mkdir build && cd build && \
cmake .. -DCMAKE_EXE_LINKER_FLAGS="-static" && \
make -j$(nproc)
# Create final image
FROM scratch
# Copy binary from builder
COPY --from=builder /src/build/simple_object_storage /sos
# Create data directory (though mounting is preferred)
# RUN mkdir -p /data
# VOLUME /data
# Set working directory (optional for scratch)
# WORKDIR /data
# Expose port
EXPOSE 80
# Run server (assuming config is mounted at /data/config.json)
ENTRYPOINT ["/sos"]