tree: 67676f70cf19efa2c1e9af2f113b632d16f7a502 [path history] [tgz]
  1. build.ubuntu-1604.Dockerfile
  2. build.ubuntu-1804.Dockerfile
  3. docker-compose-ubuntu-1604.yml
  4. docker-compose-ubuntu-1804.yml
  5. fns-rt.ubuntu-1604.Dockerfile
  6. fns-rt.ubuntu-1804.Dockerfile
  7. kms-rt.ubuntu-1604.Dockerfile
  8. kms-rt.ubuntu-1804.Dockerfile
  9. README.md
  10. runtime.config.toml
  11. tdfs-rt.ubuntu-1604.Dockerfile
  12. tdfs-rt.ubuntu-1804.Dockerfile
  13. tms-rt.ubuntu-1604.Dockerfile
  14. tms-rt.ubuntu-1804.Dockerfile
docker/README.md

MesaTEE Docker

This directory contains the docker infrastructure for build and runtime environment. Both Ubuntu 16.04 and 18.04 images are provided. Note that you must mount SGX device and ASEM domain socket into the container environment to use SGX feature.

Build

The build dockerfile (build.ubuntu-{1604,1804}.Dockerfile) only contains minimal dependencies to build and test the project. To use them, you can directly use pre-built docker images from Docker Hub with:

$ docker run --rm \
  --device=/dev/isgx \
  -v/var/run/aesmd/aesm.socket:/var/run/aesmd/aesm.socket \
  -v`pwd`:/mesatee \
  -w /mesatee \
  -it mesalocklinux/mesatee-build-ubuntu-1804

or you can also build the image by yourself with docker build:

$ docker build -t mesatee-build-ubuntu-1804 - < build.ubuntu-1804.Dockerfile

and run:

$ docker run --rm \
  --device=/dev/isgx \
  -v/var/run/aesmd/aesm.socket:/var/run/aesmd/aesm.socket \
  -v`pwd`:/mesatee \
  -w /mesatee \
  -it mesatee-build-ubuntu-1804

Runtime

MesaTEE contains many services, we have put each service, config and related resources into different docker image ({tms,tdfs,kms,fns}-rt.ubuntu-{1604,1804}.Dockerfile). To make the deployment simpler, we recommend to use docker-compose to manage all services. Since the remote attestation is required for all services, you should setup the Intel Attestation Service ID (SPID) and key before start the services. You can use env vars or set them in the docker-compose-ubuntu-{1604,1804}.yml file.

$ export IAS_SPID=xxxxxx
$ export IAS_KEY=xxxxxx
$ cd docker && docker-compose -f docker-compose-ubuntu-1804.yml up
Starting docker_mesatee-tms_1  ... done
Starting docker_mesatee-tdfs_1 ... done
Starting docker_mesatee-kms_1  ... done
Starting docker_mesatee-fns_1  ... done
Attaching to docker_mesatee-kms_1, docker_mesatee-tms_1, docker_mesatee-tdfs_1, docker_mesatee-fns_1