From 067d30b07e8e4ae8bace4ba44dfb59d2f1062785 Mon Sep 17 00:00:00 2001 From: gabriel klawitter Date: Wed, 22 May 2019 10:19:05 +0200 Subject: [PATCH] ci: fix docker file for debian binary (#265) --- polkadot/.gitlab-ci.yml | 6 +++- polkadot/scripts/docker/Dockerfile | 48 ++++++++++++++++++++---------- 2 files changed, 37 insertions(+), 17 deletions(-) diff --git a/polkadot/.gitlab-ci.yml b/polkadot/.gitlab-ci.yml index 398a77baef..ce1fc364b3 100644 --- a/polkadot/.gitlab-ci.yml +++ b/polkadot/.gitlab-ci.yml @@ -164,7 +164,11 @@ publish-docker-release: - echo "Polkadot version = ${VERSION}" - test -z "${VERSION}" && exit 1 - cd ./artifacts - - docker build --tag $CONTAINER_IMAGE:$VERSION --tag $CONTAINER_IMAGE:$EXTRATAG . + - docker build + --build-arg VCS_REF="${CI_COMMIT_SHORT_SHA}" + --build-arg BUILD_DATE="$(date -u '+%Y-%m-%dT%H:%M:%SZ')" + --tag $CONTAINER_IMAGE:$VERSION + --tag $CONTAINER_IMAGE:$EXTRATAG . - docker push $CONTAINER_IMAGE:$VERSION - docker push $CONTAINER_IMAGE:$EXTRATAG after_script: diff --git a/polkadot/scripts/docker/Dockerfile b/polkadot/scripts/docker/Dockerfile index 8d4e21788f..4b48815b65 100644 --- a/polkadot/scripts/docker/Dockerfile +++ b/polkadot/scripts/docker/Dockerfile @@ -1,26 +1,42 @@ -FROM ubuntu:xenial -LABEL maintainer "devops-team@parity.io" -LABEL description="Paritytech Polkadot Node Implementation" +FROM debian:stretch-slim +# metadata +ARG VCS_REF +ARG BUILD_DATE + +LABEL io.parity.image.authors="devops-team@parity.io" \ + io.parity.image.vendor="Parity Technologies" \ + io.parity.image.title="parity/polkadot" \ + io.parity.image.description="polkadot: a platform for web3" \ + io.parity.image.source="https://github.com/paritytech/polkadot/blob/master/scripts/docker/Dockerfile" \ + io.parity.image.revision="${VCS_REF}" \ + io.parity.image.created="${BUILD_DATE}" \ + io.parity.image.documentation="https://github.com/paritytech/polkadot/" + +# show backtraces +ENV RUST_BACKTRACE 1 + +# install tools and dependencies RUN apt-get update && \ - apt-get upgrade -y && \ - DEBIAN_FRONTEND=noninteractive apt-get install -y \ - libssl1.0.0 \ - ca-certificates \ - curl && \ - apt-get autoremove -y && \ - apt-get clean - -RUN find /var/lib/apt/lists/ -type f -not -name lock -delete + DEBIAN_FRONTEND=noninteractive apt-get upgrade -y && \ + DEBIAN_FRONTEND=noninteractive apt-get install -y \ + libssl1.1 \ + ca-certificates \ + curl && \ +# apt cleanup + apt-get autoremove -y && \ + apt-get clean && \ + find /var/lib/apt/lists/ -type f -not -name lock -delete; \ +# add user + useradd -m -u 1000 -U -s /bin/sh -d /polkadot polkadot +# add polkadot binary to docker image COPY ./polkadot /usr/local/bin - - -RUN useradd -m -u 1000 -U -s /bin/sh -d /polkadot polkadot USER polkadot -ENV RUST_BACKTRACE 1 +# check if executable works in this container +RUN /usr/local/bin/polkadot --version EXPOSE 30333 9933 9944 VOLUME ["/polkadot"]