diff --git a/docker/Dockerfile b/docker/Dockerfile index fa682b4dc844942a5c64077e7e6075a78d4c8a43..08a77ab1ba040396aca18dd9083478409f1bb565 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -2,50 +2,33 @@ # Build Stage # ------------------------------------------------------------------------------ -FROM alpine as build - -RUN apk update && \ - apk add ca-certificates curl && \ - update-ca-certificates && \ - apk add --update \ - cmake \ - make \ - pkgconfig \ - gcc \ - g++ \ - musl-dev \ - linux-headers \ - protoc \ - openssl-dev \ - clang-dev - -# install latest stable rust -RUN curl https://sh.rustup.rs -sSf | sh -s -- -y +# Building for Debian buster because we need the binary to be compatible +# with the image paritytech/ci-linux:production (currently based on +# debian:buster-slim) used by the gitlab CI +FROM rust:1-buster as build + +RUN apt-get update && \ + DEBIAN_FRONTEND=noninteractive apt-get install -y \ + clang # Copy source tree COPY . . # build duniter ARG threads=1 -RUN source ~/.cargo/env && \ - CARGO_PROFILE_RELEASE_LTO="true" \ - RUSTFLAGS="-C target-feature=-crt-static" \ - cargo build --release -j $threads +RUN CARGO_PROFILE_RELEASE_LTO="true" \ + cargo build --release -j $threads # ------------------------------------------------------------------------------ # Final Stage # ------------------------------------------------------------------------------ -FROM alpine +FROM debian:buster-slim LABEL maintainer="Gilles Filippini <gilles.filippini@pini.fr>" LABEL version="0.0.0" LABEL description="Crypto-currency software (based on Substrate framework) to operate Äž1 libre currency" -# Dependancies -RUN apk update && \ - apk add libstdc++ - # Intall COPY --from=build /target/release/duniter /usr/local/bin/duniter COPY docker/docker-entrypoint /usr/local/bin/ diff --git a/docker/docker-entrypoint b/docker/docker-entrypoint index e83075f565bb2c6bb5de2c90a6c54d96b88b7893..1fb42dd55dbe155b6144a76bed171e7088c466aa 100755 --- a/docker/docker-entrypoint +++ b/docker/docker-entrypoint @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash function boolean () { echo "$1" | sed -E 's/^(true|yes|1)$/true/i'