2021-03-21 00:51:51 +01:00
|
|
|
FROM rust:1.44.1-slim-buster as builder
|
2018-08-19 19:26:57 +03:00
|
|
|
|
2021-03-23 21:38:17 +01:00
|
|
|
WORKDIR /build
|
2018-08-19 19:26:57 +03:00
|
|
|
|
2021-03-23 21:38:17 +01:00
|
|
|
RUN apt-get update \
|
|
|
|
&& apt-get install -y --no-install-recommends clang=1:7.* cmake=3.* \
|
|
|
|
libsnappy-dev=1.* \
|
|
|
|
&& apt-get clean \
|
|
|
|
&& rm -rf /var/lib/apt/lists/*
|
2018-08-20 19:27:23 +03:00
|
|
|
|
2021-03-21 00:51:51 +01:00
|
|
|
COPY . .
|
2020-09-18 08:50:04 -04:00
|
|
|
|
2020-11-23 16:26:42 +01:00
|
|
|
RUN cargo install --locked --path .
|
2018-08-20 19:27:23 +03:00
|
|
|
|
2021-03-21 00:51:51 +01:00
|
|
|
# Create runtime image
|
|
|
|
FROM debian:buster-slim
|
|
|
|
|
2021-03-23 21:38:17 +01:00
|
|
|
WORKDIR /app
|
|
|
|
|
|
|
|
RUN apt-get update \
|
|
|
|
&& apt-get install -y --no-install-recommends curl \
|
|
|
|
&& apt-get clean \
|
|
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
|
|
|
|
RUN groupadd -r user \
|
2021-04-08 22:18:08 +02:00
|
|
|
&& adduser --disabled-login --system --shell /bin/false --uid 1000 --ingroup user user
|
|
|
|
|
2021-04-08 22:49:23 +02:00
|
|
|
COPY --from=builder --chown=user:user \
|
|
|
|
/build/target/release/electrs .
|
2021-03-21 00:51:51 +01:00
|
|
|
|
|
|
|
USER user
|
|
|
|
|
2018-08-20 19:27:23 +03:00
|
|
|
# Electrum RPC
|
|
|
|
EXPOSE 50001
|
|
|
|
|
|
|
|
# Prometheus monitoring
|
|
|
|
EXPOSE 4224
|
|
|
|
|
|
|
|
STOPSIGNAL SIGINT
|
2020-11-15 09:30:32 +01:00
|
|
|
|
|
|
|
HEALTHCHECK CMD curl -fSs http://localhost:4224/ || exit 1
|
2021-03-21 00:51:51 +01:00
|
|
|
|
2021-03-23 21:38:17 +01:00
|
|
|
ENTRYPOINT ["./electrs"]
|