55 lines
1.4 KiB
Docker
55 lines
1.4 KiB
Docker
FROM alpine:latest AS builder
|
|
LABEL maintainer="tomasz@chorwat.pl"
|
|
LABEL project="https://github.com/tchorwat/stockfish"
|
|
|
|
# Install dependencies
|
|
RUN apk add --no-cache git g++ make
|
|
|
|
RUN git clone --depth 1 --branch sf_15 https://github.com/official-stockfish/Stockfish.git
|
|
|
|
WORKDIR /Stockfish/src
|
|
RUN echo "arch:$( uname -m )" \
|
|
&& case $( uname -m ) in \
|
|
x86_64) \
|
|
make build ARCH=x86-64-modern \
|
|
;; \
|
|
aarch64) \
|
|
make build ARCH=armv8 \
|
|
;; \
|
|
armv7l) \
|
|
make build ARCH=armv7 \
|
|
;; \
|
|
ppc64le) \
|
|
make build ARCH=ppc-64 \
|
|
;; \
|
|
*) \
|
|
exit 1 \
|
|
;; \
|
|
esac
|
|
|
|
RUN echo "Source used to build binaries from this directory could be find at: https://github.com/official-stockfish/Stockfish/tree/sf_15" > /Stockfish/source.txt
|
|
|
|
|
|
FROM alpine:latest
|
|
LABEL maintainer="tomasz@chorwat.pl"
|
|
LABEL project="https://github.com/tchorwat/stockfish"
|
|
|
|
COPY ./entrypoint.sh /
|
|
|
|
RUN chmod +x /entrypoint.sh \
|
|
&& apk add --no-cache libstdc++ ucspi-tcp6 \
|
|
&& addgroup -g 1000 stockfish \
|
|
&& adduser -u 1000 -G stockfish -HD stockfish
|
|
|
|
WORKDIR /stockfish/
|
|
USER stockfish:stockfish
|
|
|
|
COPY --chown=stockfish:stockfish --from=builder /Stockfish/src/stockfish /stockfish/
|
|
COPY --chown=stockfish:stockfish --from=builder /Stockfish/Copying.txt /stockfish/
|
|
COPY --chown=stockfish:stockfish --from=builder /Stockfish/source.txt /stockfish/
|
|
COPY --chown=stockfish:stockfish --from=builder /Stockfish/src/*.nnue /stockfish/
|
|
|
|
EXPOSE 23249
|
|
ENTRYPOINT ["/entrypoint.sh"]
|
|
|