FROM ubuntu:16.04 RUN apt-get update \ && apt-get install -y --no-install-recommends \ build-essential \ curl \ gcc-aarch64-linux-gnu \ gcc-arm-linux-gnueabihf \ libc6-dev-arm64-cross \ libc6-dev-armhf-cross \ libc6-dev-i386 \ gcc-5-multilib \ asciidoctor \ && rm -rf /var/cache/dpkg RUN ln -s asm-generic/ /usr/include/asm RUN useradd -ms /bin/bash user USER user WORKDIR /home/user ENV RUST=1.47.0 RUN curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain ${RUST} ENV PATH=/home/user/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin RUN rustup target add i686-unknown-linux-gnu \ && rustup target add armv7-unknown-linux-gnueabihf \ && rustup target add aarch64-unknown-linux-gnu RUN cargo install cargo-deb \ && rm -rf /home/user/.cargo/{git,tmp,registry} VOLUME /home/user/.cargo/tmp VOLUME /home/user/.cargo/git VOLUME /home/user/.cargo/registry