FROM sgx RUN apt update RUN apt install -y gawk python-pip RUN pip install protobuf RUN pip install pycrypto WORKDIR /root/.ssh #Temp - TODO: Make the git repo public and remove these commands and retest. COPY gitcrysp-docker-deploy-key.id_rsa ./id_rsa COPY gitcrysp-docker-deploy-key.id_rsa.pub ./id_rsa.pub RUN ssh-keyscan git-crysp.uwaterloo.ca > ./known_hosts WORKDIR /root RUN git clone gogs@git-crysp.uwaterloo.ca:miti/graphene.git WORKDIR graphene RUN git checkout mitigator_patch RUN git checkout 2263b701 RUN git submodule init RUN git submodule update RUN cd Pal/src/host/Linux-SGX/sgx-driver && git checkout 30d4b940 WORKDIR /root/graphene COPY isgx_version.h Pal/src/host/Linux-SGX/sgx-driver/ RUN mkdir Pal/src/host/Linux-SGX/sgx-driver/linux-sgx-driver COPY sgx_user.h Pal/src/host/Linux-SGX/sgx-driver/linux-sgx-driver/ RUN openssl genrsa -3 -out Pal/src/host/Linux-SGX/signer/enclave-key.pem 3072 RUN make SGX=1 WORKDIR /root