2018-07-20 19:57:48 +02:00
|
|
|
FROM ubuntu:xenial
|
2017-05-26 14:18:17 +02:00
|
|
|
MAINTAINER Parity Technologies <devops@parity.io>
|
2018-08-26 00:44:08 +02:00
|
|
|
#set ENVIROMENT
|
|
|
|
ARG TARGET
|
|
|
|
ENV TARGET ${TARGET}
|
|
|
|
|
2017-05-26 14:18:17 +02:00
|
|
|
# install tools and dependencies
|
2018-10-26 13:51:08 +02:00
|
|
|
RUN apt update && apt install -y --no-install-recommends openssl libudev-dev file curl jq
|
2018-08-26 00:44:08 +02:00
|
|
|
|
2017-05-26 14:18:17 +02:00
|
|
|
# show backtraces
|
2018-08-26 00:44:08 +02:00
|
|
|
ENV RUST_BACKTRACE 1
|
|
|
|
|
2017-05-26 14:18:17 +02:00
|
|
|
#cleanup Docker image
|
2018-08-26 00:44:08 +02:00
|
|
|
RUN apt autoremove -y
|
|
|
|
RUN apt clean -y
|
|
|
|
RUN rm -rf /tmp/* /var/tmp/* /var/lib/apt/lists/*
|
|
|
|
|
2018-10-03 14:10:05 +02:00
|
|
|
RUN groupadd -g 1000 parity \
|
|
|
|
&& useradd -m -u 1000 -g parity -s /bin/sh parity
|
|
|
|
|
|
|
|
|
|
|
|
WORKDIR /home/parity
|
|
|
|
|
|
|
|
ENV PATH "~/bin:${PATH}"
|
|
|
|
|
2018-08-26 00:44:08 +02:00
|
|
|
#add TARGET to docker image
|
2018-10-03 14:10:05 +02:00
|
|
|
COPY artifacts/x86_64-unknown-linux-gnu/$TARGET ./bin/$TARGET
|
2018-08-26 00:44:08 +02:00
|
|
|
|
|
|
|
# Build a shell script because the ENTRYPOINT command doesn't like using ENV
|
|
|
|
RUN echo "#!/bin/bash \n ${TARGET} \$@" > ./entrypoint.sh
|
|
|
|
RUN chmod +x ./entrypoint.sh
|
|
|
|
|
2018-11-14 15:23:44 +01:00
|
|
|
COPY scripts/docker/hub/check_sync.sh /check_sync.sh
|
2018-10-26 13:51:08 +02:00
|
|
|
|
2018-11-29 10:57:49 +01:00
|
|
|
# switch to user parity here
|
|
|
|
USER parity
|
|
|
|
|
2017-05-26 14:18:17 +02:00
|
|
|
# setup ENTRYPOINT
|
2018-08-26 00:44:08 +02:00
|
|
|
EXPOSE 5001 8080 8082 8083 8545 8546 8180 30303/tcp 30303/udp
|
|
|
|
ENTRYPOINT ["./entrypoint.sh"]
|