#!/bin/bash script_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" report_error() { RED=$(tput setaf 1) NO_COLOR=$(tput sgr0) cat < : An arbitrary string chosen by the user to describe the version of Occlum preinstalled in the Docker image, e.g., "latest", "0.9.0", "prerelease", and etc. : The name of the OS distribution that the Docker image is based on. Currently, must be one of the following values: ubuntu16.04 Use Ubuntu 16.04 as the base image ubuntu18.04 Use Ubuntu 18.04 as the base image centos7.2 Use CentOS 7.2 as the base image The resulting Docker image will have "occlum/occlum:-" as its label. EOF exit 1 } set -e if [[ ( "$#" < 2 ) ]] ; then report_error fi occlum_label=$1 os_name=$2 function check_item_in_list() { item=$1 list=$2 [[ $list =~ (^|[[:space:]])$item($|[[:space:]]) ]] } check_item_in_list "$os_name" "ubuntu16.04 ubuntu18.04 centos7.2" || report_error cd "$script_dir/.." docker build -f "$script_dir/Dockerfile.$os_name" -t "occlum/occlum:$occlum_label-$os_name" .