basicswap/docker/production/swapclient/Dockerfile
tecnovert a51a895141
docker: Manually install protobuf to avoid error.
Error: "TypeError: Descriptors cannot not be created directly"

Use pycryptodome ripemd160 implementation else it must be manually enabled in hashlib/openssl.
2022-06-16 14:28:52 +02:00

45 lines
1.4 KiB
Docker

FROM debian:bullseye-slim
ENV LANG=C.UTF-8 \
DEBIAN_FRONTEND=noninteractive \
DATADIR=/data
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 not up to date
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 install && \
ldconfig
RUN wget -O coincurve-anonswap.zip https://github.com/tecnovert/coincurve/archive/anonswap.zip && \
unzip coincurve-anonswap.zip && \
cd coincurve-anonswap && \
python3 setup.py install --force
RUN wget -O basicswap-master.zip https://github.com/tecnovert/basicswap/archive/master.zip; \
unzip basicswap-master.zip; \
cd basicswap-master; \
protoc -I=basicswap --python_out=basicswap basicswap/messages.proto; \
pip3 install .;
#COPY ./test_code basicswap-master
#RUN cd basicswap-master; \
# protoc -I=basicswap --python_out=basicswap basicswap/messages.proto; \
# pip3 install .;
RUN groupadd -r swap_user && useradd -g swap_user -ms /bin/bash swap_user && \
mkdir /data && chown swap_user -R /data
# Expose html port
EXPOSE 12700
VOLUME /data
COPY ./entrypoint.sh /entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"]
CMD ["basicswap-run", "-datadir=/data"]