FROM alpine:3.21 AS downloader

ARG SNELL_VERSION=5.0.1
ARG SNELL_ZIP_SHA256=9bea1c2b9e35b73b31634856c04d18c393072b9e5dcde6a32781d8b8f908c539

RUN apk add --no-cache curl unzip \
    && curl -fsSL "https://dl.nssurge.com/snell/snell-server-v${SNELL_VERSION}-linux-amd64.zip" -o /tmp/snell.zip \
    && echo "${SNELL_ZIP_SHA256}  /tmp/snell.zip" | sha256sum -c - \
    && unzip -p /tmp/snell.zip snell-server > /snell-server \
    && chmod 755 /snell-server

FROM alpine:3.21

RUN apk add --no-cache ca-certificates
COPY --from=downloader /snell-server /usr/local/bin/snell-server
COPY entrypoint.sh /usr/local/bin/entrypoint.sh
RUN chmod 755 /usr/local/bin/entrypoint.sh

ENTRYPOINT ["/usr/local/bin/entrypoint.sh"]
