Dockerfile 1.4 KB

123456789101112131415161718192021222324252627282930313233
  1. FROM ubuntu:16.04
  2. RUN apt update && apt install -y build-essential sudo ocaml automake autoconf libtool wget python libssl-dev git protobuf-compiler libprotobuf-dev cmake curl libcurl4-openssl-dev lsb-release debhelper unzip nano kmod nasm vim
  3. WORKDIR /pir/
  4. RUN git clone https://github.com/intel/linux-sgx.git
  5. WORKDIR linux-sgx
  6. RUN git checkout sgx_2.1.3
  7. RUN ./download_prebuilt.sh #Apparently need to run this even if we use opensource libraries - issue #363
  8. RUN make
  9. RUN make sdk_install_pkg
  10. RUN make psw_install_pkg
  11. WORKDIR linux/installer/bin
  12. RUN echo -e "no\n/opt/intel" | ./sgx_linux_x64_sdk_*.bin
  13. RUN echo -e "no\n/opt/intel" | ./sgx_linux_x64_psw_*.bin
  14. WORKDIR /pir/
  15. COPY ZT.tar.gz /pir/
  16. RUN tar -xf ZT.tar.gz
  17. RUN cp start-aesmd /usr/local/sbin/
  18. RUN git clone https://github.com/openssl/openssl.git OpenSSL_1.1.1d && \
  19. cd OpenSSL_1.1.1d && git checkout tags/OpenSSL_1_1_1d && \
  20. cd ../ && tar -cf OpenSSL_1.1.1d.tar.gz OpenSSL_1.1.1d/
  21. #Setting up SGXSSL with the version of OpenSSL that we downloaded in the previous step.
  22. RUN git clone https://github.com/intel/intel-sgx-ssl.git && \
  23. cd intel-sgx-ssl && git checkout tags/lin_2.5_1.1.1d && \
  24. cp ../OpenSSL_1.1.1d.tar.gz ./openssl_source/ && \
  25. cd Linux && make && make install
  26. RUN cp /opt/intel/sgxssl/lib64/* /opt/intel/sgxsdk/lib64/
  27. RUN git clone https://github.com/sshsshy/ZeroTrace.git
  28. RUN cd ZeroTrace && make clean && make