datarhei-dragonfork-core/Dockerfile

39 lines
996 B
Text
Raw Normal View History

2023-02-23 04:17:39 -05:00
ARG GOLANG_IMAGE=golang:1.20-alpine3.16
2022-11-04 07:43:12 -04:00
ARG BUILD_IMAGE=alpine:3.16
2022-05-13 13:26:45 -04:00
# Cross-Compilation
# https://www.docker.com/blog/faster-multi-platform-builds-dockerfile-cross-compilation-guide/
FROM --platform=$BUILDPLATFORM $GOLANG_IMAGE as builder
ARG TARGETOS TARGETARCH
ENV GOOS=$TARGETOS GOARCH=$TARGETARCH
2022-05-13 13:26:45 -04:00
COPY . /dist/core
RUN apk add \
2022-11-02 17:07:38 -04:00
git \
make && \
2022-05-13 13:26:45 -04:00
cd /dist/core && \
go version && \
2022-07-21 14:55:31 -04:00
make release_linux && \
2022-11-02 17:07:38 -04:00
make import_linux && \
make ffmigrate_linux
2022-05-13 13:26:45 -04:00
FROM $BUILD_IMAGE
COPY --from=builder /dist/core/core /core/bin/core
COPY --from=builder /dist/core/import /core/bin/import
2022-11-02 17:07:38 -04:00
COPY --from=builder /dist/core/ffmigrate /core/bin/ffmigrate
2022-05-13 13:26:45 -04:00
COPY --from=builder /dist/core/mime.types /core/mime.types
COPY --from=builder /dist/core/run.sh /core/bin/run.sh
RUN mkdir /core/config /core/data
ENV CORE_CONFIGFILE=/core/config/config.json
ENV CORE_STORAGE_DISK_DIR=/core/data
ENV CORE_DB_DIR=/core/config
VOLUME ["/core/data", "/core/config"]
ENTRYPOINT ["/core/bin/run.sh"]
WORKDIR /core