FROM --platform=${TARGETPLATFORM:-${BUILDPLATFORM:-linux/amd64}} alpine:3.18 as builder WORKDIR /build RUN apk update && \ apk add \ build-base \ cargo \ git \ grpc \ protobuf \ protobuf-dev \ rust ARG GIT_HASH=af02dac8b855c361d74234387d288a9591fad1d5 RUN git clone https://gitlab.com/lightning-signer/validating-lightning-signer.git vls RUN cd vls && \ git checkout $GIT_HASH && \ cargo build --bin vlsd2 --release FROM --platform=${TARGETPLATFORM:-${BUILDPLATFORM:-linux/amd64}} alpine:3.18 as runner ARG UID=100 ARG GID=101 LABEL maintainer.0="Lakshya Singh (@king-11)" \ maintainer.1="Dev Random (@devrandom01)" RUN addgroup vls --gid ${GID} --system RUN adduser --uid ${UID} --system vls --ingroup vls RUN apk update && \ apk add \ build-base \ curl-dev \ protobuf \ bind-tools COPY --from=builder /build/vls/target/release/vlsd2 /usr/local/bin/vlsd2 COPY entrypoint.sh /entrypoint.sh RUN chmod +x /entrypoint.sh COPY vlsd2.toml /vlsd2.toml ENV VLS_DATA=/home/vls/.lightning-signer RUN mkdir ${VLS_DATA} RUN chown vls:vls ${VLS_DATA} ENV REMOTE_SIGNER_ALLOWLIST=${VLS_DATA}/ALLOWLIST RUN touch ${REMOTE_SIGNER_ALLOWLIST} VOLUME ["${VLS_DATA}"] USER vls ENTRYPOINT ["/entrypoint.sh"] RUN vlsd2 --git-desc CMD ["vlsd2"]