|
|
|
FROM ubuntu:22.04 AS og
|
|
|
|
|
|
|
|
ENV DEBIAN_FRONTEND noninteractive
|
|
|
|
ENV MONERO_RELEASE v0.18.3.4
|
|
|
|
|
|
|
|
WORKDIR /opt/monero
|
|
|
|
|
|
|
|
# Install dependencies
|
|
|
|
RUN apt-get update && apt-get install -y \
|
|
|
|
build-essential cmake pkg-config libboost-all-dev \
|
|
|
|
libssl-dev libzmq3-dev libunbound-dev libsodium-dev libpgm-dev git wget
|
|
|
|
|
|
|
|
# Clone monero repo
|
|
|
|
RUN git clone https://github.com/monero-project/monero --branch=$MONERO_RELEASE --depth=1 .
|
|
|
|
|
|
|
|
# Clone submodules
|
|
|
|
RUN git submodule update --init --force
|
|
|
|
|
|
|
|
# Compile monero
|
|
|
|
ARG THREADS 2
|
|
|
|
RUN make -j$THREADS
|
|
|
|
|
|
|
|
# Download ban list
|
|
|
|
RUN wget -qO /tmp/ban_list.txt "https://raw.githubusercontent.com/Boog900/monero-ban-list/main/ban_list.txt"
|
|
|
|
|
|
|
|
# Download DNS client
|
|
|
|
RUN wget -qO q.tar.gz "https://github.com/natesales/q/releases/download/v0.19.2/q_0.19.2_linux_amd64.tar.gz" \
|
|
|
|
&& tar xzvf q.tar.gz \
|
|
|
|
&& mv q /tmp/q \
|
|
|
|
&& rm *.tar.gz
|
|
|
|
|
|
|
|
FROM ubuntu:22.04
|
|
|
|
|
|
|
|
WORKDIR /data
|
|
|
|
|
|
|
|
COPY --from=og /usr/lib/x86_64-linux-gnu/ /usr/lib/x86_64-linux-gnu/
|
|
|
|
COPY --from=og /opt/monero/build/Linux/_no_branch_/release/bin/monerod /bin/monerod
|
|
|
|
COPY --from=og /opt/monero/build/Linux/_no_branch_/release/bin/monero-wallet-cli /bin/monero-wallet-cli
|
|
|
|
COPY --from=og /opt/monero/build/Linux/_no_branch_/release/bin/monero-wallet-rpc /bin/monero-wallet-rpc
|
|
|
|
COPY --from=og /tmp/ban_list.txt /ban_list.txt
|
|
|
|
COPY --from=og /tmp/q /usr/local/bin/q
|
|
|
|
|
|
|
|
COPY dockerfiles/monero-entrypoint.sh /entrypoint.sh
|
|
|
|
RUN chmod 755 /entrypoint.sh
|
|
|
|
|
|
|
|
EXPOSE 18080
|
|
|
|
EXPOSE 18081
|
|
|
|
EXPOSE 18082
|
|
|
|
EXPOSE 18083
|