basicswap/Dockerfile

48 lines
1.5 KiB
Text
Raw Permalink Normal View History

FROM ubuntu:22.04
2020-12-01 20:45:03 +00:00
2019-07-19 15:33:51 +00:00
ENV LANG=C.UTF-8 \
2020-12-01 20:45:03 +00:00
DEBIAN_FRONTEND=noninteractive \
2019-07-17 15:12:06 +00:00
DATADIRS="/coindata"
RUN apt-get update; \
apt-get install -y wget python3-pip gnupg unzip make g++ autoconf automake libtool pkg-config gosu tzdata;
# Must install protoc directly as latest package is only on 3.12
RUN wget -O protobuf_src.tar.gz https://github.com/protocolbuffers/protobuf/releases/download/v21.1/protobuf-python-4.21.1.tar.gz && \
tar xvf protobuf_src.tar.gz && \
cd protobuf-3.21.1 && \
./configure --prefix=/usr && \
make -j$(nproc) install && \
ldconfig
2020-12-01 20:45:03 +00:00
2023-12-14 18:29:32 +00:00
ARG COINCURVE_VERSION=v0.2
RUN wget -O coincurve-anonswap.zip https://github.com/tecnovert/coincurve/archive/refs/tags/anonswap_$COINCURVE_VERSION.zip && \
unzip coincurve-anonswap.zip && \
mv ./coincurve-anonswap_$COINCURVE_VERSION ./coincurve-anonswap && \
2020-12-01 20:45:03 +00:00
cd coincurve-anonswap && \
python3 setup.py install --force
2019-07-17 15:12:06 +00:00
# Install requirements first so as to skip in subsequent rebuilds
COPY ./requirements.txt requirements.txt
RUN pip3 install -r requirements.txt
COPY . basicswap-master
RUN cd basicswap-master; \
2019-07-17 15:12:06 +00:00
protoc -I=basicswap --python_out=basicswap basicswap/messages.proto; \
pip3 install .;
2020-12-02 21:19:10 +00:00
RUN useradd -ms /bin/bash swap_user && \
mkdir /coindata && chown swap_user -R /coindata
2019-07-17 15:12:06 +00:00
2022-07-31 17:33:01 +00:00
# html port
2019-07-17 15:12:06 +00:00
EXPOSE 12700
2022-07-31 17:33:01 +00:00
# websocket port
EXPOSE 11700
2019-07-17 15:12:06 +00:00
VOLUME /coindata
2020-12-02 21:19:10 +00:00
COPY ./docker/entrypoint.sh /entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"]
CMD ["basicswap-run", "-datadir=/coindata"]