37 lines
884 B
Docker
Raw Normal View History

2025-02-10 09:44:44 +01:00
# Variables
ARG BUILDER=codexstorage/nim-lang:2.0.14
2025-02-10 10:27:32 +01:00
ARG IMAGE=ubuntu:24.04
2025-02-10 09:44:44 +01:00
ARG BUILD_HOME=/src
ARG MAKE_PARALLEL=${MAKE_PARALLEL:-4}
ARG NIMFLAGS="${NIMFLAGS:-"-d:disableMarchNative"}"
ARG USE_LIBBACKTRACE=${USE_LIBBACKTRACE:-1}
ARG APP_HOME=/crawler
# Build
FROM ${BUILDER} AS builder
ARG BUILD_HOME
ARG MAKE_PARALLEL
ARG NIMFLAGS
ARG USE_LIBBACKTRACE
2025-02-10 10:27:32 +01:00
ENV DEBIAN_FRONTEND=noninteractive
2025-02-10 09:44:44 +01:00
2025-02-10 10:27:32 +01:00
RUN apt-get update && apt-get install -y cmake build-essential
2025-02-10 09:44:44 +01:00
WORKDIR ${BUILD_HOME}
COPY . .
2025-03-24 18:14:11 +02:00
RUN nimble install nimble
2025-02-10 09:44:44 +01:00
RUN nimble build
# Create
FROM ${IMAGE}
ARG BUILD_HOME
ARG APP_HOME
WORKDIR ${APP_HOME}
COPY --from=builder ${BUILD_HOME}/build/* /usr/local/bin
COPY --from=builder --chmod=0755 ${BUILD_HOME}/docker/docker-entrypoint.sh /
RUN apt-get update && apt-get install -y libgomp1 curl jq && rm -rf /var/lib/apt/lists/*
2025-02-10 09:44:44 +01:00
ENTRYPOINT ["/docker-entrypoint.sh"]
CMD ["codexcrawler"]