34 lines
895 B
Text
34 lines
895 B
Text
|
FROM alpine:3.9 as builder
|
||
|
MAINTAINER github@erebe.eu
|
||
|
|
||
|
RUN apk --no-cache add ca-certificates git ghc curl musl-dev gmp-dev zlib-dev pcre-dev xz make upx
|
||
|
RUN curl -sSL https://github.com/commercialhaskell/stack/releases/download/v2.1.3/stack-2.1.3-linux-x86_64-static.tar.gz | tar xvz && \
|
||
|
mv stack*/stack /usr/bin
|
||
|
|
||
|
|
||
|
COPY stack.yaml /mnt
|
||
|
COPY *.cabal /mnt
|
||
|
WORKDIR /mnt
|
||
|
RUN rm -rf ~/.stack && \
|
||
|
stack config set system-ghc --global true && \
|
||
|
stack setup && \
|
||
|
stack install --split-objs --ghc-options="-fPIC -fllvm" --only-dependencies
|
||
|
|
||
|
COPY . /mnt
|
||
|
|
||
|
RUN echo ' ld-options: -static' >> wstunnel.cabal ; \
|
||
|
stack install --split-objs --ghc-options="-fPIC -fllvm"
|
||
|
RUN upx --ultra-brute /root/.local/bin/wstunnel
|
||
|
|
||
|
|
||
|
|
||
|
FROM alpine:latest as runner
|
||
|
MAINTAINER github@erebe.eu
|
||
|
|
||
|
WORKDIR /root
|
||
|
COPY --from=builder /root/.local/bin/wstunnel .
|
||
|
RUN chmod +x ./wstunnel
|
||
|
|
||
|
CMD ["./wstunnel"]
|
||
|
|