occlum/tools/docker
2023-11-07 09:26:20 +08:00
..
ci Update gvisor test with prepare_bazel.sh 2023-01-18 13:11:16 +08:00
build_image.sh [dockerfile] Remove dockerfiles not supported 2023-05-09 09:55:15 +08:00
build_rt_image.sh [docker] Add dockerfile for Occlum runtime docker image 2023-09-26 16:30:00 +08:00
docker-entrypoint.sh [docker] Fix entrypoint typo for runtime docker image 2023-11-07 09:26:20 +08:00
Dockerfile.aliyunlinux3 Fix some typo errors 2023-04-12 09:03:26 +08:00
Dockerfile.anolis8.8 [dockerfile] More clean up to reduce docker image size 2023-06-13 14:10:48 +08:00
Dockerfile.ubuntu20.04 Update Occlum dockerfile to use SDK 2.20 2023-11-07 09:26:20 +08:00
Dockerfile.ubuntu20.04-rt [tools] Update ubuntu20.04-rt dockerfile for 0.30.0 2023-11-07 09:26:20 +08:00
README.md [docker] Add dockerfile for Occlum runtime docker image 2023-09-26 16:30:00 +08:00
start_aesm.sh Fix docker image for SGX1 HW 2021-03-15 10:33:32 +08:00

Building Occlum Docker images

This folder contains scripts and Dockerfiles for users to build the Docker images for Occlum. An Occlum Docker image sets up the development environment for Occlum and also gets Occlum preinstalled.

How to Build

Docker image for development

Currently, three Linux OS distributions are supported: Ubuntu 20.04, aliyunlinux3 and anolis8.8.

To build an Occlum Docker image, run the following command

./build_image.sh <OCCLUM_LABEL> <OS_NAME> <OCCLUM_BRANCH>

where <OCCLUM_LABEL> is an arbitrary string chosen by the user to describe the version of Occlum preinstalled in the Docker image (e.g., "latest", "0.24.0", and "prerelease") and <OS_NAME> is the name of the OS distribution that the Docker image is based on. Currently, <OS_NAME> must be one of the following values: ubuntu20.04, aliyunlinux3 and anolis8.8. <OCCLUM_BRANCH> indicates which the docker image is built on, e.g "0.24.0". It is optional, if not provided, "master" branch will be used.

The resulting Docker image will have occlum/occlum:<OCCLUM_LABEL>-<OS_NAME> as its label.

Docker image for runtime

Currently, only one Linux OS distributions are supported for runtime docker image: Ubuntu 20.04.

The Occlum runtime docker image has the smallest size, plus supports running prebuilt Occlum instance.

To build an Occlum runtime Docker image, run the following command

./build_rt_image.sh <OCCLUM_VERSION> <OS_NAME> <SGX_PSW_VERSION> <SGX_DCAP_VERSION>

<OCCLUM_VERSION>:
    The Occlum version is built on, e.g "0.29.7".
    Make sure this Occlum version debian packages are available in advance.

<OS_NAME>:
    The name of the OS distribution that the Docker image is based on. Currently, <OS_NAME> must be one of the following values:
        ubuntu20.04         Use Ubuntu 20.04 as the base image

<SGX_PSW_VERSION>:
    The SGX PSW version libraries expected to be installed in the runtime docker image.

<SGX_DCAP_VERSION>:
    The SGX DCAP version libraries expected to be installed in the runtime docker image.

The resulting Docker image will have occlum/occlum:<OCCLUM_VERSION>-rt-<OS_NAME> as its label.

Just note, that the <OCCLUM_VERSION>, <SGX_PSW_VERSION> and <SGX_DCAP_VERSION> have dependencies. Details please refer to Dockerfile.ubuntu20.04.

For example, building Occlum runtime docker image for version 0.29.7.

./build_rt_image.sh 0.29.7 ubuntu20.04 2.17.100.3 1.14.100.3