This is an automated email from the ASF dual-hosted git repository. lahirujayathilake pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/airavata.git
commit 17012d556bc461b9e530ed12b999878fd96d66c7 Author: yasith <[email protected]> AuthorDate: Wed Feb 26 00:01:01 2025 -0600 revise jupyterhub spawned notebooks, add makefiles --- .../deployments/jupyterhub/Dockerfile-jl-base | 28 ++++++++++++++++++++ .../deployments/jupyterhub/Dockerfile-jl-iguide | 30 ++++++++++++++++++++++ .../deployments/jupyterhub/Dockerfile-nb-base | 20 --------------- .../deployments/jupyterhub/Dockerfile-nb-iguide | 21 --------------- .../deployments/jupyterhub/Makefile | 13 ++++++++++ .../deployments/jupyterhub/jupyterhub_config.py | 2 +- 6 files changed, 72 insertions(+), 42 deletions(-) diff --git a/modules/agent-framework/deployments/jupyterhub/Dockerfile-jl-base b/modules/agent-framework/deployments/jupyterhub/Dockerfile-jl-base new file mode 100644 index 0000000000..e115370edc --- /dev/null +++ b/modules/agent-framework/deployments/jupyterhub/Dockerfile-jl-base @@ -0,0 +1,28 @@ +FROM mambaorg/micromamba:latest + +USER root +WORKDIR /home/jovyan + +RUN micromamba install -y -n base -c conda-forge \ + python=3.11 \ + pip \ + git \ + && micromamba clean --all -y + +RUN micromamba run -n base pip install --no-cache-dir \ + jupyterlab \ + airavata-jupyter-magic + +COPY data/ ./ + +RUN micromamba run -n base \ + git clone https://github.com/cyber-shuttle/jupyter-notebook-examples ./examples + +EXPOSE 8888 +CMD micromamba run -n base jupyter lab \ + --ip=0.0.0.0 \ + --port=8888 \ + --no-browser \ + --allow-root \ + --NotebookApp.exec_lines='import airavata_magics' \ + --NotebookApp.token='' diff --git a/modules/agent-framework/deployments/jupyterhub/Dockerfile-jl-iguide b/modules/agent-framework/deployments/jupyterhub/Dockerfile-jl-iguide new file mode 100644 index 0000000000..a49e2f78b4 --- /dev/null +++ b/modules/agent-framework/deployments/jupyterhub/Dockerfile-jl-iguide @@ -0,0 +1,30 @@ +FROM mambaorg/micromamba:latest + +USER root +WORKDIR /home/jovyan + +RUN micromamba install -y -n base -c conda-forge \ + python=3.11 \ + pip \ + git \ + && micromamba clean --all -y + +RUN micromamba run -n base pip install --no-cache-dir \ + jupyterlab \ + airavata-jupyter-magic + +COPY data/ ./ + +RUN micromamba run -n base \ + git clone https://github.com/cyber-shuttle/jupyter-notebook-examples ./examples +RUN micromamba run -n base \ + git clone https://github.com/DImuthuUpe/population_vulnerable_to_dam_failure ./dam + +EXPOSE 8888 +CMD micromamba run -n base jupyter lab \ + --ip=0.0.0.0 \ + --port=8888 \ + --no-browser \ + --allow-root \ + --NotebookApp.exec_lines='import airavata_magics' \ + --NotebookApp.token='' diff --git a/modules/agent-framework/deployments/jupyterhub/Dockerfile-nb-base b/modules/agent-framework/deployments/jupyterhub/Dockerfile-nb-base deleted file mode 100644 index cfcdfe2601..0000000000 --- a/modules/agent-framework/deployments/jupyterhub/Dockerfile-nb-base +++ /dev/null @@ -1,20 +0,0 @@ -FROM python:3.12-slim - -USER root -WORKDIR /home/jovyan - -RUN pip install jupyterlab airavata-magics -RUN git clone https://github.com/cyber-shuttle/jupyter-notebook-examples examples - -EXPOSE 8888 -COPY data/* . - -ENTRYPOINT [ - "jupyter", "lab", - "--ip=0.0.0.0", - "--port=8888", - "--no-browser", - "--allow-root", - "--NotebookApp.exec_lines='import airavata_magics'", - "--NotebookApp.token=''" -] diff --git a/modules/agent-framework/deployments/jupyterhub/Dockerfile-nb-iguide b/modules/agent-framework/deployments/jupyterhub/Dockerfile-nb-iguide deleted file mode 100644 index 153fb9d7be..0000000000 --- a/modules/agent-framework/deployments/jupyterhub/Dockerfile-nb-iguide +++ /dev/null @@ -1,21 +0,0 @@ -FROM python:3.12-slim - -USER root -WORKDIR /home/jovyan - -RUN pip install jupyterlab airavata-magics -RUN git clone https://github.com/cyber-shuttle/jupyter-notebook-examples examples -RUN git clone https://github.com/DImuthuUpe/population_vulnerable_to_dam_failure iguide - -EXPOSE 8888 -COPY data/* . - -ENTRYPOINT [ - "jupyter", "lab", - "--ip=0.0.0.0", - "--port=8888", - "--no-browser", - "--allow-root", - "--NotebookApp.exec_lines='import airavata_magics'", - "--NotebookApp.token=''" -] diff --git a/modules/agent-framework/deployments/jupyterhub/Makefile b/modules/agent-framework/deployments/jupyterhub/Makefile index e69de29bb2..b1ce481d6b 100644 --- a/modules/agent-framework/deployments/jupyterhub/Makefile +++ b/modules/agent-framework/deployments/jupyterhub/Makefile @@ -0,0 +1,13 @@ +build-jl-base: + docker build --platform linux/amd64 -t cybershuttle/jupyterlab-base -f Dockerfile-jl-base . && \ + docker push cybershuttle/jupyterlab-base + +build-jl-iguide: + docker build --platform linux/amd64 -t cybershuttle/jupyterlab-iguide -f Dockerfile-jl-iguide . && \ + docker push cybershuttle/jupyterlab-iguide + +run-jl-base: + docker run -p 18888:8888 -it cybershuttle/jupyterlab-base + +run-jl-iguide: + docker run -p 18888:8888 -it cybershuttle/jupyterlab-iguide diff --git a/modules/agent-framework/deployments/jupyterhub/jupyterhub_config.py b/modules/agent-framework/deployments/jupyterhub/jupyterhub_config.py index 379062251a..66e5f08f9e 100644 --- a/modules/agent-framework/deployments/jupyterhub/jupyterhub_config.py +++ b/modules/agent-framework/deployments/jupyterhub/jupyterhub_config.py @@ -20,7 +20,7 @@ c.GenericOAuthenticator.allow_all = True # Spawner Configuration c.JupyterHub.spawner_class = 'dockerspawner.DockerSpawner' -c.DockerSpawner.image = os.environ.get('DOCKER_NOTEBOOK_IMAGE', 'jupyter/base-notebook:latest') +c.DockerSpawner.image = os.environ.get('DOCKER_NOTEBOOK_IMAGE', 'cybershuttle/jupyterlab-base:latest') c.DockerSpawner.notebook_dir = '/home/jovyan' c.DockerSpawner.volumes = { 'jupyterhub-user-{username}': '/home/jovyan',
