64 lines
1.3 KiB
Docker
64 lines
1.3 KiB
Docker
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 && \
|
|
cd validating-lightning-signer && \
|
|
git checkout $GIT_HASH
|
|
|
|
RUN cd validating-lightning-signer && \
|
|
cargo build --bins --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/validating-lightning-signer/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"]
|