Skip to content
Snippets Groups Projects
Commit 9ad96e50 authored by Denis_P's avatar Denis_P :field_hockey: Committed by GitHub
Browse files

Dockerfile optimization (#2598)

* metadata for docker image

* metadata for docker image
parent 8afbe0df
No related merge requests found
......@@ -207,7 +207,11 @@ publish-docker-release:
- echo "Substrate version = ${VERSION}"
- test -z "${VERSION}" && exit 1
- cd ./artifacts
- docker build --tag $CONTAINER_IMAGE:$VERSION --tag $CONTAINER_IMAGE:latest .
- 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:latest .
- docker push $CONTAINER_IMAGE:$VERSION
- docker push $CONTAINER_IMAGE:latest
after_script:
......
FROM debian:stretch-slim
LABEL maintainer "devops-team@parity.io"
LABEL description="Substrate: The platform for blockchain innovators"
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get upgrade -y && \
DEBIAN_FRONTEND=noninteractive apt-get install -y \
libssl1.1 \
ca-certificates \
curl && \
apt-get autoremove -y && \
apt-get clean && \
find /var/lib/apt/lists/ -type f -not -name lock -delete
# metadata
ARG VCS_REF
ARG BUILD_DATE
COPY ./substrate /usr/local/bin
LABEL io.parity.image.authors="devops-team@parity.io" \
io.parity.image.vendor="Parity Technologies" \
io.parity.image.title="parity/substrate" \
io.parity.image.description="Substrate: The platform for blockchain innovators." \
io.parity.image.source="https://github.com/paritytech/substrate/blob/master/scripts/docker/Dockerfile" \
io.parity.image.revision="${VCS_REF}" \
io.parity.image.created="${BUILD_DATE}" \
io.parity.image.documentation="https://wiki.parity.io/Parity-Substrate"
# show backtraces
ENV RUST_BACKTRACE 1
RUN useradd -m -u 1000 -U -s /bin/sh -d /substrate substrate
USER substrate
# install tools and dependencies
RUN apt-get update && \
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 /substrate substrate
# add substrate binary to docker image
COPY ./substrate /usr/local/bin
ENV RUST_BACKTRACE 1
USER substrate
# check if executable works in this container
RUN /usr/local/bin/substrate --version
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment