-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' into chore/get-stata-license-from-sidecar
- Loading branch information
Showing
17 changed files
with
316 additions
and
38 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
name: Build and Push jupyter-covid19 | ||
|
||
on: | ||
push: | ||
paths: | ||
- jupyter-covid19/** | ||
- .github/workflows/build_jupyter_covid19_image.yml | ||
|
||
jobs: | ||
jupyter-covid19: | ||
name: Build and Push jupyter-covid19 | ||
uses: uc-cdis/.github/.github/workflows/image_build_push.yaml@master | ||
with: | ||
DOCKERFILE_LOCATION: "./jupyter-covid19/Dockerfile" | ||
DOCKERFILE_BUILD_CONTEXT: "./jupyter-covid19" | ||
OVERRIDE_REPO_NAME: "jupyter-notebook" | ||
OVERRIDE_TAG_NAME: "covid19-$(echo ${GITHUB_REF#refs/*/} | tr / _)" | ||
secrets: | ||
ECR_AWS_ACCESS_KEY_ID: ${{ secrets.ECR_AWS_ACCESS_KEY_ID }} | ||
ECR_AWS_SECRET_ACCESS_KEY: ${{ secrets.ECR_AWS_SECRET_ACCESS_KEY }} | ||
QUAY_USERNAME: ${{ secrets.QUAY_USERNAME }} | ||
QUAY_ROBOT_TOKEN: ${{ secrets.QUAY_ROBOT_TOKEN }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
22 changes: 22 additions & 0 deletions
22
.github/workflows/build_jupyter_restricted_download_image.yml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
name: Build and Push jupyter-restricted-download | ||
|
||
on: | ||
push: | ||
paths: | ||
- jupyter-restricted-download/** | ||
- .github/workflows/build_jupyter_restricted_download_image.yml | ||
|
||
jobs: | ||
jupyter-restricted-download: | ||
name: Build and Push jupyter-restricted-download | ||
uses: uc-cdis/.github/.github/workflows/image_build_push.yaml@master | ||
with: | ||
DOCKERFILE_LOCATION: "./jupyter-restricted-download/Dockerfile" | ||
DOCKERFILE_BUILD_CONTEXT: "./jupyter-restricted-download" | ||
OVERRIDE_REPO_NAME: "jupyter-notebook" | ||
OVERRIDE_TAG_NAME: "restricted-download-$(echo ${GITHUB_REF#refs/*/} | tr / _)" | ||
secrets: | ||
ECR_AWS_ACCESS_KEY_ID: ${{ secrets.ECR_AWS_ACCESS_KEY_ID }} | ||
ECR_AWS_SECRET_ACCESS_KEY: ${{ secrets.ECR_AWS_SECRET_ACCESS_KEY }} | ||
QUAY_USERNAME: ${{ secrets.QUAY_USERNAME }} | ||
QUAY_ROBOT_TOKEN: ${{ secrets.QUAY_ROBOT_TOKEN }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,100 +1,106 @@ | ||
FROM quay.io/cdis/jupyter-notebook:1.1.0 | ||
FROM quay.io/cdis/jupyter-notebook:restricted-download-1.3.1 | ||
|
||
USER $NB_USER | ||
WORKDIR /home/$NB_USER | ||
ARG COVID_TOOLS_BRANCH=master | ||
|
||
# copy welcome splash page | ||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/welcome.html /home/$NB_USER/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/welcome.html /home/$NB_USER/ | ||
RUN touch /home/$NB_USER/welcome.html | ||
|
||
# copy readme and notebooks requirements | ||
RUN mkdir /home/$NB_USER/covid19-notebook | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/readme.md /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/readme.md /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/readme.md | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/requirements.txt /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/requirements.txt /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/requirements.txt | ||
|
||
# copy premade notebooks | ||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/jhu-summary-overview/COVID-19-JHU_data_analysis.ipynb /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/jhu-summary-overview/COVID-19-JHU_data_analysis.ipynb /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/COVID-19-JHU_data_analysis.ipynb | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/kaggle-demographics/kaggle_data_analysis.ipynb /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/kaggle-demographics/kaggle_data_analysis.ipynb /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/kaggle_data_analysis.ipynb | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/chicago-seir-forecast/covid19_seir.ipynb /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/chicago-seir-forecast/covid19_seir.ipynb /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/covid19_seir.ipynb | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/chicago-seir-forecast/seir_diagram.png /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/chicago-seir-forecast/seir_diagram.png /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/seir_diagram.png | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/ctp_testing/CTP_testing.ipynb /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/ctp_testing/CTP_testing.ipynb /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/CTP_testing.ipynb | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/TCGA_COAD_COVID.ipynb /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/TCGA_COAD_COVID.ipynb /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/TCGA_COAD_COVID.ipynb | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/nCoV-2019_data_analysis.ipynb /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/nCoV-2019_data_analysis.ipynb /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/nCoV-2019_data_analysis.ipynb | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/SSR/SSR_notebook.ipynb /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/SSR/SSR_notebook.ipynb /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/SSR_notebook.ipynb | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/X-ray/DarkCovidNet_binary_classes.ipynb /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/X-ray/DarkCovidNet_binary_classes.ipynb /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/DarkCovidNet_binary_classes.ipynb | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/X-ray/CNN_XRAY_CF.ipynb /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/X-ray/CNN_XRAY_CF.ipynb /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/CNN_XRAY_CF.ipynb | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/google_mobility.ipynb /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/google_mobility.ipynb /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/google_mobility.ipynb | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/pypfb/PFB_example.ipynb /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/pypfb/PFB_example.ipynb /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/PFB_example.ipynb | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/IL_tab_charts.ipynb /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/IL_tab_charts.ipynb /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/IL_tab_charts.ipynb | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/3D_Protein_Vis/3D_Protein_Vis.ipynb /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/3D_Protein_Vis/3D_Protein_Vis.ipynb /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/3D_Protein_Vis.ipynb | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/3D_Protein_Vis/3D_Protein_Vis_7D4F_gui.png /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/3D_Protein_Vis/3D_Protein_Vis_7D4F_gui.png /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/3D_Protein_Vis_7D4F_gui.png | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/3D_Protein_Vis/3D_Protein_Vis_7D4F_view.html /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/3D_Protein_Vis/3D_Protein_Vis_7D4F_view.html /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/3D_Protein_Vis_7D4F_view.html | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/3D_Protein_Vis/3D_Protein_Vis_A_view.html /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/3D_Protein_Vis/3D_Protein_Vis_A_view.html /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/3D_Protein_Vis_A_view.html | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/3D_Protein_Vis/3D_Protein_Vis_B_view.html /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/3D_Protein_Vis/3D_Protein_Vis_B_view.html /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/3D_Protein_Vis_B_view.html | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/3D_Protein_Vis/3D_Protein_Vis_demo_view.html /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/3D_Protein_Vis/3D_Protein_Vis_demo_view.html /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/3D_Protein_Vis_demo_view.html | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/ICU_prediction/Percentage_ICU_prediction.ipynb /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/ICU_prediction/Percentage_ICU_prediction.ipynb /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/Percentage_ICU_prediction.ipynb | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/extended-seir/extended-seir.ipynb /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/extended-seir/extended-seir.ipynb /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/extended-seir.ipynb | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/extended-seir/extended-seir_diagram.png /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/extended-seir/extended-seir_diagram.png /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/extended-seir_diagram.png | ||
|
||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/extended-seir/extended-seir_parameters.png /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/extended-seir/extended-seir_parameters.png /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/extended-seir_parameters.png | ||
|
||
# small pfb file | ||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/pypfb/PFB_example.avro /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/pypfb/PFB_example.avro /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/PFB_example.avro | ||
|
||
# peregrine helper script required by the X-ray notebooks | ||
ADD --chown=jovyan:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/X-ray/peregrine.py /home/$NB_USER/covid19-notebook/ | ||
ADD --chown=$NB_USER:users https://raw.githubusercontent.com/uc-cdis/covid19-tools/$COVID_TOOLS_BRANCH/covid19-notebooks/X-ray/peregrine.py /home/$NB_USER/covid19-notebook/ | ||
RUN touch /home/$NB_USER/covid19-notebook/peregrine.py | ||
|
||
# premade notebooks dependencies | ||
RUN pip install --upgrade 'pip<20.3' # pip 20.3 causes dependency resolution issues | ||
RUN pip install -r /home/$NB_USER/covid19-notebook/requirements.txt | ||
RUN pip install -U -r /home/$NB_USER/covid19-notebook/requirements.txt | ||
|
||
# The image can't function (see error below) with `jsonschema` version 3.2.0. Some dependencies are | ||
# preventing `jsonschema` from being upgraded to a more recent version. Updating it here as a quick fix. | ||
# File "/usr/local/lib/python3.9/dist-packages/jupyter_events/validators.py", line 44, in <module> | ||
# JUPYTER_EVENTS_SCHEMA_VALIDATOR = Draft7Validator( | ||
# TypeError: __init__() got an unexpected keyword argument 'registry' | ||
RUN pip install jsonschema==4.20.0 --upgrade |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
SERVICE_PORT=9880 | ||
USER_VOLUME=./user-volume | ||
DATA_VOLUME=./data-volume |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,104 @@ | ||
ARG ROOT_CONTAINER=quay.io/cdis/ubuntu:focal | ||
|
||
FROM $ROOT_CONTAINER | ||
|
||
LABEL maintainer="Jupyter Project <[email protected]>" | ||
|
||
# Fix DL4006 | ||
SHELL ["/bin/bash", "-o", "pipefail", "-c"] | ||
|
||
USER root | ||
|
||
# Install all OS dependencies for the notebook server that starts but lacks all | ||
# features (e.g., download as all possible file formats) | ||
ENV DEBIAN_FRONTEND noninteractive | ||
RUN apt-get update --yes && \ | ||
apt-get install --yes --no-install-recommends \ | ||
python3.9 \ | ||
python3-pip \ | ||
tini \ | ||
wget \ | ||
git \ | ||
curl \ | ||
ca-certificates \ | ||
sudo \ | ||
locales \ | ||
fonts-liberation \ | ||
vim \ | ||
run-one && \ | ||
apt-get clean && rm -rf /var/lib/apt/lists/* && \ | ||
echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && \ | ||
locale-gen | ||
|
||
# Set Python 3.9 as the default Python version | ||
RUN ln -s /usr/bin/python3.9 /usr/bin/python | ||
|
||
# Add the Python 3.9 executable path to the PATH environment variable | ||
ENV PATH="/usr/bin/python3.9:$PATH" | ||
|
||
# Upgrade pip to ensure it's associated with Python 3.9.5 | ||
RUN python3.9 -m pip install --upgrade pip | ||
|
||
# Remove /usr/bin/pip3 if it exists | ||
RUN rm -f /usr/bin/pip3 | ||
|
||
# Create a symbolic link from pip3 to pip | ||
RUN ln -s /usr/bin/pip /usr/bin/pip3 | ||
|
||
RUN pip install JPype1 jupyter | ||
|
||
RUN jupyter notebook --generate-config | ||
|
||
# step 1 to disable downloads: | ||
RUN jupyter labextension disable @jupyterlab/docmanager-extension:download \ | ||
&& jupyter labextension disable @jupyterlab/filebrowser-extension:download | ||
|
||
RUN pip install pandas numpy seaborn scipy matplotlib pyNetLogo SALib boto3 awscli --upgrade | ||
RUN pip install gen3==4.18.0 --upgrade | ||
RUN pip install jupyter --upgrade | ||
# step 2 to disable downloads: | ||
RUN pip uninstall nbconvert --yes | ||
|
||
# Create a non-root user for Jupyter without copying /bin or /bin/bash | ||
ARG NB_USER=jovyan | ||
ARG NB_UID=1000 | ||
ARG NB_GID=100 | ||
RUN useradd -m -s /bin/bash -N -u $NB_UID $NB_USER && \ | ||
chown -R $NB_USER:users /home/$NB_USER && \ | ||
chmod -R u+rwx /home/$NB_USER && \ | ||
mkdir -p /home/$NB_USER/pd | ||
|
||
# Configure environment | ||
ENV CONDA_DIR=/opt/conda \ | ||
PATH=/usr/local/bin:$PATH \ | ||
SHELL=/bin/bash \ | ||
NB_USER=${NB_USER} \ | ||
NB_UID=${NB_UID} \ | ||
NB_GID=${NB_GID} \ | ||
HOME=/home/$NB_USER \ | ||
LC_ALL=en_US.UTF-8 \ | ||
LANG=en_US.UTF-8 \ | ||
LANGUAGE=en_US.UTF-8 | ||
|
||
# Expose port 8888 for JupyterLab | ||
EXPOSE 8888 | ||
|
||
# Add local files as late as possible to avoid cache busting | ||
RUN wget https://raw.githubusercontent.com/jupyter/docker-stacks/7e1a19a8427f99652c75d1d4fda3df780721b574/images/docker-stacks-foundation/fix-permissions | ||
RUN mv fix-permissions /usr/local/bin/fix-permissions.sh | ||
COPY start.sh /usr/local/bin/ | ||
COPY start-notebook.sh /usr/local/bin/ | ||
COPY start-singleuser.sh /usr/local/bin/ | ||
RUN chmod +x /usr/local/bin/*.sh | ||
|
||
COPY resources/custom.js /home/$NB_USER/.jupyter/custom/ | ||
COPY resources/jupyter_notebook_config.py /home/$NB_USER/.jupyter/tmp.py | ||
RUN cat /home/$NB_USER/.jupyter/tmp.py >> /home/$NB_USER/.jupyter/jupyter_notebook_config.py && rm /home/$NB_USER/.jupyter/tmp.py | ||
|
||
RUN fix-permissions.sh "/home/${NB_USER}" | ||
|
||
USER $NB_USER | ||
|
||
# Set the default command to start JupyterLab | ||
WORKDIR /home/$NB_USER | ||
ENTRYPOINT ["jupyter", "lab", "--allow-root", "--ip=0.0.0.0", "--port=8888", "--no-browser"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
# jupyter-restricted-download | ||
|
||
A "restricted" build of `jupyter-slim`. Basically the same as `../jupyter-slim/`, but it prevents users from downloading anything from the jupyter lab |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
define(['base/js/namespace'], function(Jupyter){ | ||
Jupyter._target = '_self'; | ||
}) |
Oops, something went wrong.