kubeflow-kale/kale

Bug in the Kale Jupyter Notebook Server Docker Image - Kale built pipeline execution fails

pshah16 opened this issue · 1 comments

Currently, the Notebook Server with Kale is built with the docker file provided here in the repo:
(commit 2ac934b)
https://github.com/kubeflow-kale/kale/blob/master/docker/jupyterlab/Dockerfile

If pipeline is built and compiled using kale notebook server with the docker file above, the pipeline execution fails with the error shows in the image

'Coroutine' object is not subscriptable error

Kale_docker_Image_Issues
..

This issue can be fixed by upgrading Jupyter client to version 5.3.4 in the docker file:
RUN pip3 install --upgrade "jupyter-client==5.3.4"

The latest docker file with this change would look like this:

ARG IMAGE_TYPE="cpu"
FROM gcr.io/kubeflow-images-public/tensorflow-1.14.0-notebook-${IMAGE_TYPE}:v0.7.0

USER root

# Install basic dependencies
RUN apt-get update && \
    apt-get install -y --no-install-recommends \
        ca-certificates bash-completion tar less \
        python-pip python-setuptools build-essential python-dev \
        python3-pip python3-wheel && \
    rm -rf /var/lib/apt/lists/*

ENV SHELL /bin/bash
COPY bashrc /etc/bash.bashrc
RUN echo "set background=dark" >> /etc/vim/vimrc.local

# Install latest KFP SDK & Kale & JupyterLab Extension
RUN pip3 install --upgrade pip && \
    # XXX: Install enum34==1.1.8 because other versions lead to errors during
    #  KFP installation
    pip3 install --upgrade "enum34==1.1.8" && \
    pip3 install --upgrade "jupyterlab>=2.0.0,<3.0.0" && \
    pip3 install --upgrade kubeflow-kale && \
    jupyter labextension install kubeflow-kale-labextension
RUN pip3 install --upgrade "jupyter-client==5.3.4"


RUN echo "jovyan ALL=(ALL:ALL) NOPASSWD:ALL" > /etc/sudoers.d/jovyan
WORKDIR /home/jovyan
USER jovyan

CMD ["sh", "-c", \
     "jupyter lab --notebook-dir=/home/jovyan --ip=0.0.0.0 --no-browser \
      --allow-root --port=8888 --LabApp.token='' --LabApp.password='' \
      --LabApp.allow_origin='*' --LabApp.base_url=${NB_PREFIX}"]

Did you find a solution for this? Thanks