FROM ubuntu:16.04 ARG uid=1000 RUN apt-get update && \ apt-get install -y \ pkg-config \ libssl-dev \ libgmp3-dev \ curl \ build-essential \ libsqlite3-dev \ libsodium-dev \ cmake \ git \ python3.5 \ python3-pip \ python-setuptools \ apt-transport-https \ ca-certificates \ debhelper \ wget RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BD33704C RUN echo "deb https://repo.evernym.com/deb xenial master" >> /etc/apt/sources.list RUN apt-get update -y && apt-get install -y \ python3-charm-crypto RUN pip3 install -U \ pip \ setuptools \ virtualenv ENV RUST_ARCHIVE=rust-1.16.0-x86_64-unknown-linux-gnu.tar.gz ENV RUST_DOWNLOAD_URL=https://static.rust-lang.org/dist/$RUST_ARCHIVE RUN mkdir -p /rust WORKDIR /rust RUN curl -fsOSL $RUST_DOWNLOAD_URL \ && curl -s $RUST_DOWNLOAD_URL.sha256 | sha256sum -c - \ && tar -C /rust -xzf $RUST_ARCHIVE --strip-components=1 \ && rm $RUST_ARCHIVE \ && ./install.sh ENV PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/root/.cargo/bin" RUN useradd -ms /bin/bash -u $uid indy USER indy RUN cargo install --git https://github.com/DSRCorporation/cargo-test-xunit WORKDIR /home/indy RUN git clone https://github.com/hyperledger/indy-anoncreds.git RUN virtualenv -p python3.5 /home/indy/test RUN cp -r /usr/local/lib/python3.5/dist-packages/Charm_Crypto-0.0.0.egg-info /home/indy/test/lib/python3.5/site-packages/Charm_Crypto-0.0.0.egg-info RUN cp -r /usr/local/lib/python3.5/dist-packages/charm /home/indy/test/lib/python3.5/site-packages/charm USER root RUN ln -sf /home/indy/test/bin/python /usr/local/bin/python3 RUN ln -sf /home/indy/test/bin/pip /usr/local/bin/pip3 USER indy RUN pip3 install \ /home/indy/indy-anoncreds \ pytest