Files
DB-GPT/docker/base/build_image.sh
2023-08-23 23:00:48 +08:00

84 lines
2.1 KiB
Bash
Executable File

#!/bin/bash
SCRIPT_LOCATION=$0
cd "$(dirname "$SCRIPT_LOCATION")"
WORK_DIR=$(pwd)
BASE_IMAGE="nvidia/cuda:11.8.0-runtime-ubuntu22.04"
IMAGE_NAME="eosphorosai/dbgpt"
# zh: https://pypi.tuna.tsinghua.edu.cn/simple
PIP_INDEX_URL="https://pypi.org/simple"
# en or zh
LANGUAGE="en"
BUILD_LOCAL_CODE="false"
LOAD_EXAMPLES="true"
usage () {
echo "USAGE: $0 [--base-image nvidia/cuda:11.8.0-runtime-ubuntu22.04] [--image-name db-gpt]"
echo " [-b|--base-image base image name] Base image name"
echo " [-n|--image-name image name] Current image name, default: db-gpt"
echo " [-i|--pip-index-url pip index url] Pip index url, default: https://pypi.org/simple"
echo " [--language en or zh] You language, default: en"
echo " [--build-local-code true or false] Whether to use the local project code to package the image, default: false"
echo " [--load-examples true or false] Whether to load examples to default database default: true"
echo " [-h|--help] Usage message"
}
while [[ $# -gt 0 ]]; do
key="$1"
case $key in
-b|--base-image)
BASE_IMAGE="$2"
shift # past argument
shift # past value
;;
-n|--image-name)
IMAGE_NAME="$2"
shift # past argument
shift # past value
;;
-i|--pip-index-url)
PIP_INDEX_URL="$2"
shift
shift
;;
--language)
LANGUAGE="$2"
shift
shift
;;
--build-local-code)
BUILD_LOCAL_CODE="$2"
shift
shift
;;
--load-examples)
LOAD_EXAMPLES="$2"
shift
shift
;;
-h|--help)
help="true"
shift
;;
*)
usage
exit 1
;;
esac
done
if [[ $help ]]; then
usage
exit 0
fi
docker build \
--build-arg BASE_IMAGE=$BASE_IMAGE \
--build-arg PIP_INDEX_URL=$PIP_INDEX_URL \
--build-arg LANGUAGE=$LANGUAGE \
--build-arg BUILD_LOCAL_CODE=$BUILD_LOCAL_CODE \
--build-arg LOAD_EXAMPLES=$LOAD_EXAMPLES \
-f Dockerfile \
-t $IMAGE_NAME $WORK_DIR/../../