barkd (Ark wallet daemon, pinned 0.3.0, checksum-verified release binary) packaged as an installable app; thin HTTP bridge in wallet/ark_client.rs mirrors the fedimint_client pattern — the bark SDK stays out of the node binary. wallet.ark-* RPCs cover status/balance/address/send/invoice/ board/offboard/history/configure; Ark movements merge into the unified ecash history (kind="ark") and spendable Ark sats into total_sats. Signet defaults (Second's public Ark server) until Ark matures. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
33 lines
1.3 KiB
Docker
33 lines
1.3 KiB
Docker
# barkd — Ark protocol wallet daemon (https://gitlab.com/ark-bitcoin/bark).
|
|
# No official upstream image exists (their GitLab registry is empty), so we
|
|
# package the pinned, checksum-verified release binary ourselves and push to
|
|
# the node registry — same approach as fmcd. Keep the version in lockstep with
|
|
# the REST shapes coded in core/archipelago/src/wallet/ark_client.rs (0.3.0).
|
|
FROM debian:bookworm-slim
|
|
|
|
ARG BARKD_VERSION=0.3.0
|
|
ARG BARKD_SHA256=8562fa27386bae666ed62fa95c92d40f7bdb20d22525f75799adfc16adaaedb3
|
|
|
|
RUN apt-get update && \
|
|
apt-get install -y --no-install-recommends ca-certificates curl && \
|
|
curl -fsSL "https://gitlab.com/api/v4/projects/ark-bitcoin%2Fbark/packages/generic/release-assets/bark-${BARKD_VERSION}/barkd-${BARKD_VERSION}-linux-x86_64" \
|
|
-o /usr/local/bin/barkd && \
|
|
echo "${BARKD_SHA256} /usr/local/bin/barkd" | sha256sum -c - && \
|
|
chmod a+x /usr/local/bin/barkd && \
|
|
apt-get purge -y curl && apt-get autoremove -y && \
|
|
apt-get clean && rm -rf /var/lib/apt/lists/*
|
|
|
|
COPY entrypoint.sh /entrypoint.sh
|
|
RUN chmod a+x /entrypoint.sh
|
|
|
|
# The wallet itself is created over REST by the node's Ark bridge
|
|
# (wallet.ark-* RPCs) — the container just runs the daemon.
|
|
ENV BARKD_DATADIR=/data \
|
|
BARKD_BIND_HOST=0.0.0.0 \
|
|
BARKD_BIND_PORT=3535
|
|
|
|
EXPOSE 3535
|
|
VOLUME /data
|
|
|
|
ENTRYPOINT ["/entrypoint.sh"]
|