diff options
Diffstat (limited to 'docker')
| -rw-r--r-- | docker/arkd.Dockerfile | 6 | ||||
| -rw-r--r-- | docker/base.Dockerfile | 18 | ||||
| -rw-r--r-- | docker/bitcoin.Dockerfile | 11 | ||||
| -rw-r--r-- | docker/chopsticks.Dockerfile | 6 | ||||
| -rw-r--r-- | docker/electrs.Dockerfile | 6 | ||||
| -rw-r--r-- | docker/elements.Dockerfile | 11 | ||||
| -rw-r--r-- | docker/kvrocks.Dockerfile | 6 | ||||
| -rw-r--r-- | docker/lightningd.Dockerfile | 13 | ||||
| -rw-r--r-- | docker/postgres.Dockerfile | 23 | ||||
| -rw-r--r-- | docker/strfry.Dockerfile | 18 | ||||
| -rw-r--r-- | docker/tigerbeetle.Dockerfile | 6 |
11 files changed, 124 insertions, 0 deletions
diff --git a/docker/arkd.Dockerfile b/docker/arkd.Dockerfile new file mode 100644 index 00000000..08deb403 --- /dev/null +++ b/docker/arkd.Dockerfile @@ -0,0 +1,6 @@ +FROM asoltys/arkd AS source + +FROM ghcr.io/coinos/base +USER root +COPY --from=source /app/arkd /app/ark /usr/local/bin/ +ENTRYPOINT ["arkd"] diff --git a/docker/base.Dockerfile b/docker/base.Dockerfile new file mode 100644 index 00000000..489f83d9 --- /dev/null +++ b/docker/base.Dockerfile @@ -0,0 +1,18 @@ +FROM debian:trixie-slim + +RUN apt-get update && apt-get install -y --no-install-recommends \ + curl unzip ca-certificates wget \ + libpq5 libsodium23 libatomic1 jq socat inotify-tools \ + liblmdb0 libsecp256k1-2 tini \ + && curl -fsSL https://bun.sh/install | bash \ + && mv /root/.bun/bin/bun /usr/local/bin/bun \ + && ln -s /usr/local/bin/bun /usr/local/bin/bunx \ + && rm -rf /root/.bun \ + && apt-get purge -y curl unzip \ + && apt-get autoremove -y \ + && rm -rf /var/lib/apt/lists/* \ + /usr/share/doc /usr/share/man /usr/share/locale \ + /usr/share/info /var/log/* /tmp/* + +RUN groupadd -g 1000 bun && useradd -u 1000 -g bun -m -s /bin/sh bun +WORKDIR /home/bun/app diff --git a/docker/bitcoin.Dockerfile b/docker/bitcoin.Dockerfile new file mode 100644 index 00000000..d222d0a5 --- /dev/null +++ b/docker/bitcoin.Dockerfile @@ -0,0 +1,11 @@ +FROM ghcr.io/coinos/base AS builder +ARG VERSION=30.2 +USER root +RUN wget -qO- https://bitcoincore.org/bin/bitcoin-core-$VERSION/bitcoin-$VERSION-x86_64-linux-gnu.tar.gz | tar -xz --strip-components=1 -C /usr/local + +FROM ghcr.io/coinos/base +USER root +COPY --from=builder /usr/local/bin/bitcoind /usr/local/bin/bitcoin-cli /usr/local/bin/ +RUN usermod -l bitcoin bun && usermod -d /home/bitcoin -m bitcoin && groupmod -n bitcoin bun +USER bitcoin +ENTRYPOINT ["bitcoind"] diff --git a/docker/chopsticks.Dockerfile b/docker/chopsticks.Dockerfile new file mode 100644 index 00000000..c4cc3f27 --- /dev/null +++ b/docker/chopsticks.Dockerfile @@ -0,0 +1,6 @@ +FROM ghcr.io/vulpemventures/nigiri-chopsticks AS source + +FROM ghcr.io/coinos/base +USER root +COPY --from=source /app /usr/local/bin/chopsticks +ENTRYPOINT ["chopsticks"] diff --git a/docker/electrs.Dockerfile b/docker/electrs.Dockerfile new file mode 100644 index 00000000..6a16942d --- /dev/null +++ b/docker/electrs.Dockerfile @@ -0,0 +1,6 @@ +FROM ghcr.io/vulpemventures/electrs AS source + +FROM ghcr.io/coinos/base +USER root +COPY --from=source /build/electrs /build/electrs +ENTRYPOINT ["/build/electrs"] diff --git a/docker/elements.Dockerfile b/docker/elements.Dockerfile new file mode 100644 index 00000000..98cba809 --- /dev/null +++ b/docker/elements.Dockerfile @@ -0,0 +1,11 @@ +FROM ghcr.io/coinos/base AS builder +ARG VERSION=23.3.2 +USER root +RUN wget -qO- https://github.com/ElementsProject/elements/releases/download/elements-$VERSION/elements-$VERSION-x86_64-linux-gnu.tar.gz | tar -xz --strip-components=1 -C /usr/local + +FROM ghcr.io/coinos/base +USER root +COPY --from=builder /usr/local/bin/elementsd /usr/local/bin/elements-cli /usr/local/bin/ +RUN usermod -l elements bun && usermod -d /home/elements -m elements && groupmod -n elements bun +USER elements +ENTRYPOINT ["elementsd"] diff --git a/docker/kvrocks.Dockerfile b/docker/kvrocks.Dockerfile new file mode 100644 index 00000000..c486a1b2 --- /dev/null +++ b/docker/kvrocks.Dockerfile @@ -0,0 +1,6 @@ +FROM apache/kvrocks AS source + +FROM ghcr.io/coinos/base +USER root +COPY --from=source /usr/bin/kvrocks /usr/bin/kvrocks +ENTRYPOINT ["kvrocks"] diff --git a/docker/lightningd.Dockerfile b/docker/lightningd.Dockerfile new file mode 100644 index 00000000..e7e3db4d --- /dev/null +++ b/docker/lightningd.Dockerfile @@ -0,0 +1,13 @@ +FROM elementsproject/lightningd:v25.12.1 AS source + +FROM ghcr.io/coinos/base +USER root +COPY --from=source /usr/local/ /usr/local/ +COPY --from=source /usr/bin/bitcoin-cli /usr/bin/ +COPY --from=source /entrypoint.sh /entrypoint.sh + +ENV LIGHTNINGD_DATA=/root/.lightning +ENV LIGHTNINGD_NETWORK=bitcoin +EXPOSE 9735 9835 +VOLUME ["/root/.lightning"] +ENTRYPOINT ["/entrypoint.sh"] diff --git a/docker/postgres.Dockerfile b/docker/postgres.Dockerfile new file mode 100644 index 00000000..da3b35ff --- /dev/null +++ b/docker/postgres.Dockerfile @@ -0,0 +1,23 @@ +FROM postgres:18 AS pg +FROM ghcr.io/coinos/base +USER root +COPY --from=pg /usr/lib/postgresql /usr/lib/postgresql +COPY --from=pg /usr/share/postgresql /usr/share/postgresql +COPY --from=pg /usr/local/bin/docker-entrypoint.sh /usr/local/bin/ +COPY --from=pg /lib/x86_64-linux-gnu/libpq.so.5* /lib/x86_64-linux-gnu/ +COPY --from=pg /usr/local/bin/gosu /usr/local/bin/ +RUN ln -s /usr/lib/postgresql/18/bin/* /usr/local/bin/ \ + && apt-get update && apt-get install -y --no-install-recommends libicu76 libreadline8t64 libxml2 libxslt1.1 libssl3t64 liblz4-1 libzstd1 libnuma1 liburing2 locales \ + && rm -rf /var/lib/apt/lists/* \ + && sed -i '/en_US.UTF-8/s/^# //' /etc/locale.gen && locale-gen \ + && groupadd -r postgres --gid=999 && useradd -r -g postgres --uid=999 --home-dir=/var/lib/postgresql --shell=/bin/bash postgres \ + && mkdir -p /var/run/postgresql /var/lib/postgresql /docker-entrypoint-initdb.d \ + && chown -R postgres:postgres /var/run/postgresql /var/lib/postgresql +WORKDIR / +ENV PGDATA=/var/lib/postgresql/data +ENV PG_MAJOR=18 +STOPSIGNAL SIGINT +USER postgres +EXPOSE 5432 +ENTRYPOINT ["docker-entrypoint.sh"] +CMD ["postgres"] diff --git a/docker/strfry.Dockerfile b/docker/strfry.Dockerfile new file mode 100644 index 00000000..dff5448d --- /dev/null +++ b/docker/strfry.Dockerfile @@ -0,0 +1,18 @@ +FROM debian:trixie-slim AS builder +RUN apt-get update && apt-get install -y --no-install-recommends \ + git g++ make pkg-config ca-certificates \ + liblmdb-dev libflatbuffers-dev libsecp256k1-dev \ + libb2-dev libzstd-dev libssl-dev zlib1g-dev \ + && rm -rf /var/lib/apt/lists/* +RUN git clone --depth 1 https://github.com/hoytech/strfry.git /build +WORKDIR /build +RUN git submodule update --init +RUN make setup-golpe && make -j$(nproc) +RUN strip --strip-unneeded strfry + +FROM ghcr.io/coinos/base +USER root +WORKDIR /app +COPY --from=builder /build/strfry /app/strfry +ENTRYPOINT ["tini", "--"] +CMD ["/app/strfry", "relay"] diff --git a/docker/tigerbeetle.Dockerfile b/docker/tigerbeetle.Dockerfile new file mode 100644 index 00000000..a85ad165 --- /dev/null +++ b/docker/tigerbeetle.Dockerfile @@ -0,0 +1,6 @@ +FROM ghcr.io/tigerbeetle/tigerbeetle AS source + +FROM ghcr.io/coinos/base +USER root +COPY --from=source /tigerbeetle /usr/local/bin/tigerbeetle +ENTRYPOINT ["tigerbeetle"] |
