apache / incubator-teaclave

Apache Teaclave (incubating) is an open source universal secure computing platform, making computation on privacy-sensitive data safe and simple.
https://teaclave.apache.org
Apache License 2.0
764 stars 158 forks source link

container exited with code 139 #531

Closed zzj136598 closed 3 years ago

zzj136598 commented 3 years ago

当我使用文档中的(cd docker && docker-compose -f docker-compose-ubuntu-1804-sgx-sim-mode.yml up --build),使用docker-compose启动Simulation Mode模式服务时,容器返回 teaclave-storage-service exited with code 139 teaclave-management-service exited with code 139
teaclave-authentication-service exited with code 139
teaclave-access-control-service exited with code 139
teaclave-scheduler-service exited with code 139
teaclave-execution-service exited with code 139
teaclave-frontend-service exited with code 139

当我进入容器手动启动服务时,打印出了 Segmentation fault (core dumped)

mssun commented 3 years ago

能否详细描述编译过程、编译环境,以及执行命令。

这样能更好地帮助我重现问题并解决,谢谢!

zzj136598 commented 3 years ago

我使用macos尝试运行项目,先将mac版本docker增加分配内存的大小,增加到12g,然后根据文档中Simulation Mode板块如下内容进行操作。 $ git clone https://github.com/apache/incubator-teaclave.git $ cd incubator-teaclave $ docker run --rm -v $(pwd):/teaclave -w /teaclave \ -it teaclave/teaclave-build-ubuntu-1804-sgx-2.14:latest \ bash -c ". /root/.cargo/env && \ . /opt/sgxsdk/environment && \ mkdir -p build && cd build && \ cmake -DTEST_MODE=ON -DSGX_SIM_MODE=ON .. && \ make" $ export AS_SPID="00000000000000000000000000000000" $ export AS_KEY="00000000000000000000000000000000" $ export AS_ALGO="sgx_epid" $ export AS_URL="https://api.trustedservices.intel.com:443" 当我进行到 $ (cd docker && docker-compose -f docker-compose-ubuntu-1804-sgx-sim-mode.yml up --build) 容器启动后都出现了exited with code 139

这是一部分log,在编译和打包镜像的过程中并未出现异常 => CACHED [22/24] ADD release/services/teaclave_execution_service_enclave.signed.so /teaclave/ 0.0s => CACHED [23/24] ADD release/services/enclave_info.toml /teaclave/ 0.0s => CACHED [24/24] ADD release/services/auditors /teaclave/auditors 0.0s => exporting to image 0.0s => => exporting layers 0.0s => => writing image sha256:77123c2709b26cdc39183a465decb0d548e6d6f946a621f2bbb556aedb834e69 0.0s => => naming to docker.io/library/docker_teaclave-execution-service 0.0s

Use 'docker scan' to run Snyk tests against images to find vulnerabilities and learn how to fix them Creating teaclave-authentication-service ... done Creating teaclave-access-control-service ... done Creating teaclave-storage-service ... done Creating docker_teaclave-file-service_1 ... done Creating teaclave-management-service ... done Creating teaclave-scheduler-service ... done Creating teaclave-frontend-service ... done Creating teaclave-execution-service ... done Attaching to docker_teaclave-file-service_1, teaclave-access-control-service, teaclave-storage-service, teaclave-authentication-service, teaclave-management-service, teaclave-scheduler-service, teaclave-frontend-service, teaclave-execution-service teaclave-access-control-service exited with code 139 teaclave-authentication-service exited with code 139 teaclave-management-service exited with code 139 teaclave-scheduler-service exited with code 139 teaclave-storage-service exited with code 139 teaclave-execution-service exited with code 139 teaclave-frontend-service exited with code 139

其间我试图直接docker run后进入一个容器,并参考docker-compose中的命令手动启动服务,打印出了如下 Segmentation fault (core dumped)

我不确定是否是一些配置没有设置,因为希望运行的是Simulation Mode,所以上面关于SGX的东西并没有安装

多谢解答!

mssun commented 3 years ago

多谢,我不确定是不是 macOS 上 Docker 问题。

我们的代码都有 Linux 上的 CI 测试保证,如果允许的话,最好使用 Linux 系统。

mssun commented 3 years ago

@zzj136598 should be an issue of the SGX SDK dependency. Please check again. Thanks.