From 7df7dd7c04313f2d47bbfb1929a530e0df844b37 Mon Sep 17 00:00:00 2001 From: Luke Schoen Date: Wed, 5 Aug 2020 00:59:57 +1000 Subject: [PATCH] wip: Add script to build Docker alpine container from project root directory --- scripts/docker/README.md | 12 ++++++++++++ scripts/docker/alpine/Dockerfile | 3 ++- scripts/docker/alpine/build.sh | 17 +++++++++++++++++ 3 files changed, 31 insertions(+), 1 deletion(-) create mode 100755 scripts/docker/alpine/build.sh diff --git a/scripts/docker/README.md b/scripts/docker/README.md index 3ecc1b84db5..0c265c783bc 100644 --- a/scripts/docker/README.md +++ b/scripts/docker/README.md @@ -2,6 +2,18 @@ ```docker build -f docker/ubuntu/Dockerfile --tag ethcore/openethereum:branch_or_tag_name .``` +## Usage - Alpine + +Builds a lightweight non-root OpenEthereum docker image: +``` +git clone https://github.com/openethereum/openethereum.git +cd openethereum + +OPENETHEREUM_IMAGE_REPO=eth1.0:openethereum \ +OPENETHEREUM_IMAGE_TAG=eth1.0-openethereum \ +./scripts/docker/alpine/build.sh +``` + ## Usage - CentOS Builds a lightweight non-root OpenEthereum docker image: diff --git a/scripts/docker/alpine/Dockerfile b/scripts/docker/alpine/Dockerfile index cedc8236708..719f7eeec46 100644 --- a/scripts/docker/alpine/Dockerfile +++ b/scripts/docker/alpine/Dockerfile @@ -46,4 +46,5 @@ WORKDIR /home/openethereum RUN mkdir -p /home/openethereum/.local/share/io.parity.ethereum/ COPY --chown=openethereum:openethereum --from=builder /openethereum/target/x86_64-alpine-linux-musl/release/openethereum ./ -ENTRYPOINT ["/home/openethereum/openethereum"] +# prevent Docker container from stopping after running it +ENTRYPOINT ["tail", "-f", "/dev/null"] diff --git a/scripts/docker/alpine/build.sh b/scripts/docker/alpine/build.sh new file mode 100755 index 00000000000..3df72e86bc4 --- /dev/null +++ b/scripts/docker/alpine/build.sh @@ -0,0 +1,17 @@ +#!/usr/bin/env sh + +# The image name +OPENETHEREUM_IMAGE_REPO=${OPENETHEREUM_IMAGE_REPO} +# The tag to be used for the image +OPENETHEREUM_BUILDER_IMAGE_TAG=${OPENETHEREUM_IMAGE_TAG} + +echo Building $OPENETHEREUM_IMAGE_REPO: +docker build -t $OPENETHEREUM_IMAGE_REPO . -f scripts/docker/alpine/Dockerfile + +echo Running OpenEthereum: +docker run -d --name $OPENETHEREUM_IMAGE_TAG $OPENETHEREUM_IMAGE_REPO + +echo Echoing OpenEthereum version: +docker exec -it $OPENETHEREUM_IMAGE_TAG ./openethereum --version + +echo Done.