| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License.. |
| |
| |
| FROM fedora:27 |
| MAINTAINER Yu Ding |
| |
| ENV sdk_bin https://download.01.org/intel-sgx/sgx-linux/2.7.1/distro/fedora27-server/sgx_linux_x64_sdk_2.7.101.3.bin |
| ENV psw_bin https://download.01.org/intel-sgx/sgx-linux/2.7.1/distro/fedora27-server/sgx_linux_x64_psw_2.7.101.3.bin |
| ENV rust_toolchain nightly-2019-11-25 |
| ENV DEBIAN_FRONTEND=noninteractive |
| |
| RUN yum groupinstall -y 'C Development Tools and Libraries' && yum install -y yum openssl-devel libcurl-devel protobuf-devel cmake ocaml ocaml-ocamlbuild redhat-rpm-config openssl-devel wget python git cmake expect |
| |
| RUN mkdir /root/sgx && \ |
| mkdir /etc/init && \ |
| wget -O /root/sgx/psw.bin ${psw_bin} && \ |
| wget -O /root/sgx/sdk.bin ${sdk_bin} && \ |
| cd /root/sgx && \ |
| chmod +x /root/sgx/psw.bin && \ |
| /root/sgx/psw.bin || true && \ |
| chmod +x /root/sgx/sdk.bin && \ |
| echo -e 'no\n/opt' | /root/sgx/sdk.bin && \ |
| echo 'source /opt/sgxsdk/environment' >> /root/.bashrc && \ |
| rm -rf /root/sgx/* |
| |
| RUN wget 'https://static.rust-lang.org/rustup/dist/x86_64-unknown-linux-gnu/rustup-init' -O /root/rustup-init && \ |
| chmod +x /root/rustup-init && \ |
| echo '1' | /root/rustup-init --default-toolchain ${rust_toolchain} && \ |
| echo 'source /root/.cargo/env' >> /root/.bashrc && \ |
| /root/.cargo/bin/rustup component add rust-src rls rust-analysis clippy rustfmt && \ |
| /root/.cargo/bin/cargo install xargo && \ |
| rm -rf /root/.cargo/registry && rm -rf /root/.cargo/git |
| WORKDIR /root |