openethereum/scripts/docker/ubuntu-arm/Dockerfile

46 lines
1.5 KiB
Docker
Raw Normal View History

2016-04-12 10:06:54 +02:00
FROM ubuntu:14.04
WORKDIR /build
2016-04-12 10:06:54 +02:00
# install tools and dependencies
RUN apt-get -y update && \
apt-get install -y --force-yes --no-install-recommends \
curl git make g++ gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf \
libc6-dev-armhf-cross wget file ca-certificates \
binutils-arm-linux-gnueabihf cmake3 \
&& \
apt-get clean
2016-04-12 10:06:54 +02:00
2016-06-20 11:02:31 +02:00
# install rustup
RUN curl https://sh.rustup.rs -sSf | sh -s -- -y
# rustup directory
ENV PATH /root/.cargo/bin:$PATH
2016-04-12 10:06:54 +02:00
ENV RUST_TARGETS="arm-unknown-linux-gnueabihf"
# multirust add arm--linux-gnuabhf toolchain
RUN rustup target add armv7-unknown-linux-gnueabihf
2016-04-12 10:06:54 +02:00
# show backtraces
ENV RUST_BACKTRACE 1
# show tools
RUN rustc -vV && cargo -V
# build OpenEthereum
ADD . /build/openethereum
RUN cd openethereum && \
mkdir -p .cargo && \
echo '[target.armv7-unknown-linux-gnueabihf]\n\
linker = "arm-linux-gnueabihf-gcc"\n'\
>>.cargo/config && \
cat .cargo/config && \
cargo build --target armv7-unknown-linux-gnueabihf --release --verbose && \
ls /build/openethereum/target/armv7-unknown-linux-gnueabihf/release/openethereum && \
/usr/bin/arm-linux-gnueabihf-strip /build/openethereum/target/armv7-unknown-linux-gnueabihf/release/openethereum
RUN file /build/openethereum/target/armv7-unknown-linux-gnueabihf/release/openethereum
EXPOSE 8080 8545 8180
ENTRYPOINT ["/build/openethereum/target/armv7-unknown-linux-gnueabihf/release/openethereum"]