From 6eaf92a7486554c01837c8d364329dc10f76c3e7 Mon Sep 17 00:00:00 2001 From: Sean Sube Date: Fri, 13 Jan 2023 21:56:03 -0600 Subject: [PATCH] feat(build): embed GUI bundle in API containers --- .gitlab-ci.yml | 8 ++++++++ api/Containerfile.cpu.buster | 12 ++++++++---- api/Containerfile.cuda.ubuntu | 12 ++++++++---- api/gui/bundle/copy-gui-bundle-here.txt | 0 4 files changed, 24 insertions(+), 8 deletions(-) create mode 100644 api/gui/bundle/copy-gui-bundle-here.txt diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f93f32d8..e95eb32d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -83,6 +83,8 @@ build-gui-bundle: - build-api-coverage - build-gui-bundle script: + - mv -v gui/config.json gui/index.html api/gui/ + - mv -v gui/bundle/main.js api/gui/bundle/ - cd api - ${CI_PROJECT_DIR}/common/scripts/image-build.sh --push variables: @@ -112,6 +114,12 @@ package-api-oci: IMAGE_FILE: Containerfile.cpu.buster - IMAGE_ARCH: cuda-ubuntu IMAGE_FILE: Containerfile.cuda.ubuntu + +package-gui-oci: + extends: + - .package-gui-oci + parallel: + matrix: - IMAGE_ARCH: nginx-alpine IMAGE_FILE: Containerfile.nginx.alpine - IMAGE_ARCH: nginx-bullseye diff --git a/api/Containerfile.cpu.buster b/api/Containerfile.cpu.buster index c1fbd886..ea700a06 100644 --- a/api/Containerfile.cpu.buster +++ b/api/Containerfile.cpu.buster @@ -1,12 +1,12 @@ FROM docker.io/python:3.10-buster -WORKDIR /onnx-web +WORKDIR /onnx-web/api RUN pip3 install virtualenv --upgrade RUN python3 -m venv onnx_env -ENV PATH="/onnx-web/onnx_web/bin:$PATH" +ENV PATH="/onnx-web/api/onnx_web/bin:$PATH" RUN pip3 install pip --upgrade @@ -16,6 +16,10 @@ COPY requirements.txt /onnx-web/requirements.txt RUN pip3 install -r requirements.txt --no-cache-dir -COPY onnx_web/ /onnx-web/onnx_web/ +COPY onnx_web/ /onnx-web/api/onnx_web/ -ENTRYPOINT [ "flask", "--app=onnx_web.serve", "run", "--host=0.0.0.0" ] +ENV ONNX_WEB_BUNDLE_PATH="/onnx-web/gui" + +COPY gui/ /onnx-web/gui/ + +CMD [ "flask", "--app=onnx_web.serve", "run", "--host=0.0.0.0" ] diff --git a/api/Containerfile.cuda.ubuntu b/api/Containerfile.cuda.ubuntu index c00a5789..6a80b89e 100644 --- a/api/Containerfile.cuda.ubuntu +++ b/api/Containerfile.cuda.ubuntu @@ -4,11 +4,11 @@ RUN apt-get -y update \ && apt-get -y install python3 python3-pip python3-venv \ && rm -rf /var/lib/apt/lists/* -WORKDIR /onnx-web +WORKDIR /onnx-web/api RUN python3 -m venv onnx_env -ENV PATH="/onnx-web/onnx_web/bin:$PATH" +ENV PATH="/onnx-web/api/onnx_web/bin:$PATH" RUN pip3 install pip --upgrade @@ -20,6 +20,10 @@ RUN pip3 install -r requirements.txt --no-cache-dir RUN pip3 install onnxruntime-gpu --no-cache-dir -COPY onnx_web/ /onnx-web/onnx_web/ +COPY onnx_web/ /onnx-web/api/onnx_web/ -ENTRYPOINT [ "flask", "--app=onnx_web.serve", "run", "--host=0.0.0.0" ] +ENV ONNX_WEB_BUNDLE_PATH="/onnx-web/gui" + +COPY gui/ /onnx-web/gui/ + +CMD [ "flask", "--app=onnx_web.serve", "run", "--host=0.0.0.0" ] diff --git a/api/gui/bundle/copy-gui-bundle-here.txt b/api/gui/bundle/copy-gui-bundle-here.txt new file mode 100644 index 00000000..e69de29b