From 5165cc88ad1c4b3579f61b3ac7f45cdbdd2a933a Mon Sep 17 00:00:00 2001 From: Idir Izitounene Date: Mon, 5 Feb 2024 10:55:19 +0100 Subject: [PATCH 01/11] Squashed 'docker-stacks/' content from commit ce08d9e3 git-subtree-dir: docker-stacks git-subtree-split: ce08d9e3483fdc8bc661ef0f33ee888d0b434fcd --- .flake8 | 4 + .gitattributes | 1 + .github/ISSUE_TEMPLATE/bug_report.yml | 129 +++++ .github/ISSUE_TEMPLATE/config.yml | 14 + .github/ISSUE_TEMPLATE/feature_request.yml | 67 +++ .github/actions/create-dev-env/action.yml | 20 + .github/actions/load-image/action.yml | 24 + .github/dependabot.yml | 19 + .github/pull_request_template.md | 14 + .github/workflows/aarch64-setup.yml | 30 + .github/workflows/contributed-recipes.yml | 55 ++ .../workflows/docker-build-test-upload.yml | 110 ++++ .github/workflows/docker-merge-tags.yml | 61 ++ .github/workflows/docker-tag-push.yml | 62 +++ .github/workflows/docker-wiki-update.yml | 48 ++ .github/workflows/docker.yml | 443 +++++++++++++++ .github/workflows/pre-commit.yml | 32 ++ .github/workflows/registry-move.yml | 59 ++ .github/workflows/registry-overviews.yml | 49 ++ .github/workflows/sphinx.yml | 50 ++ .gitignore | 175 ++++++ .hadolint.yaml | 5 + .markdownlint.yaml | 8 + .pre-commit-config.yaml | 165 ++++++ .readthedocs.yaml | 35 ++ CODE_OF_CONDUCT.md | 3 + CONTRIBUTING.md | 10 + LICENSE.md | 60 ++ Makefile | 111 ++++ README.md | 137 +++++ aarch64-runner/setup.sh | 39 ++ binder/Dockerfile | 18 + binder/README.ipynb | 136 +++++ .../stacks/docker-org-create-token.png | Bin 0 -> 445477 bytes .../stacks/docker-org-security.png | Bin 0 -> 243053 bytes .../contributing/stacks/docker-repo-name.png | Bin 0 -> 296240 bytes .../stacks/docker-user-dropdown.png | Bin 0 -> 147270 bytes .../stacks/github-actions-tab.png | Bin 0 -> 240976 bytes .../stacks/github-actions-workflow.png | Bin 0 -> 874816 bytes .../stacks/github-create-secrets.png | Bin 0 -> 418893 bytes .../stacks/github-secret-token.png | Bin 0 -> 301323 bytes docs/_static/jupyter-logo.svg | 90 +++ .../vscode-jupyter-settings.png | Bin 0 -> 35727 bytes docs/conf.py | 75 +++ docs/contributing/features.md | 57 ++ docs/contributing/issues.md | 19 + docs/contributing/lint.md | 76 +++ docs/contributing/packages.md | 28 + docs/contributing/recipes.md | 12 + docs/contributing/stacks.md | 154 +++++ docs/contributing/tests.md | 46 ++ docs/images/inherit.svg | 80 +++ docs/index.rst | 45 ++ docs/maintaining/aarch64-runner.md | 30 + .../new-images-and-packages-policy.md | 35 ++ docs/maintaining/tasks.md | 71 +++ docs/requirements.txt | 8 + docs/using/common.md | 286 ++++++++++ docs/using/faq.md | 47 ++ .../recipe_code/custom_environment.dockerfile | 48 ++ .../recipe_code/dask_jupyterlab.dockerfile | 10 + docs/using/recipe_code/generate_matrix.py | 21 + .../recipe_code/jupyterhub_version.dockerfile | 6 + .../recipe_code/mamba_install.dockerfile | 13 + .../recipe_code/manpage_install.dockerfile | 16 + .../recipe_code/microsoft_odbc.dockerfile | 30 + docs/using/recipe_code/oracledb.dockerfile | 59 ++ docs/using/recipe_code/pip_install.dockerfile | 12 + docs/using/recipe_code/requirements.txt | 1 + .../recipe_code/rise_jupyterlab.dockerfile | 6 + .../spellcheck_notebook_v6.dockerfile | 9 + docs/using/recipe_code/xgboost.dockerfile | 6 + docs/using/recipes.md | 527 ++++++++++++++++++ docs/using/running.md | 192 +++++++ docs/using/selecting.md | 337 +++++++++++ docs/using/specifics.md | 307 ++++++++++ docs/using/troubleshooting.md | 342 ++++++++++++ examples/README.md | 4 + examples/docker-compose/README.md | 176 ++++++ examples/docker-compose/bin/letsencrypt.sh | 48 ++ examples/docker-compose/bin/sl-dns.sh | 23 + examples/docker-compose/bin/softlayer.sh | 15 + examples/docker-compose/bin/vbox.sh | 11 + examples/docker-compose/notebook/Dockerfile | 16 + examples/docker-compose/notebook/build.sh | 12 + examples/docker-compose/notebook/down.sh | 12 + examples/docker-compose/notebook/env.sh | 22 + .../notebook/letsencrypt-notebook.yml | 31 ++ examples/docker-compose/notebook/notebook.yml | 20 + .../notebook/secure-notebook.yml | 23 + examples/docker-compose/notebook/up.sh | 72 +++ examples/make-deploy/Dockerfile | 16 + examples/make-deploy/Makefile | 44 ++ examples/make-deploy/README.md | 130 +++++ examples/make-deploy/letsencrypt.makefile | 60 ++ examples/make-deploy/self-signed.makefile | 12 + examples/make-deploy/softlayer.makefile | 26 + examples/make-deploy/virtualbox.makefile | 10 + examples/openshift/README.md | 229 ++++++++ examples/openshift/templates.json | 175 ++++++ examples/source-to-image/README.md | 170 ++++++ examples/source-to-image/assemble | 40 ++ examples/source-to-image/run | 5 + examples/source-to-image/save-artifacts | 3 + examples/source-to-image/templates.json | 371 ++++++++++++ images/all-spark-notebook/.dockerignore | 2 + images/all-spark-notebook/Dockerfile | 39 ++ images/all-spark-notebook/README.md | 15 + images/base-notebook/.dockerignore | 2 + images/base-notebook/Dockerfile | 77 +++ images/base-notebook/README.md | 14 + images/base-notebook/docker_healthcheck.py | 39 ++ images/base-notebook/jupyter_server_config.py | 58 ++ images/base-notebook/start-notebook.py | 44 ++ images/base-notebook/start-notebook.sh | 5 + images/base-notebook/start-singleuser.py | 26 + images/base-notebook/start-singleuser.sh | 5 + images/datascience-notebook/.dockerignore | 2 + images/datascience-notebook/Dockerfile | 63 +++ images/datascience-notebook/README.md | 14 + images/docker-stacks-foundation/.dockerignore | 2 + .../10activate-conda-env.sh | 8 + images/docker-stacks-foundation/Dockerfile | 143 +++++ images/docker-stacks-foundation/README.md | 14 + .../docker-stacks-foundation/fix-permissions | 33 ++ .../docker-stacks-foundation/initial-condarc | 6 + images/docker-stacks-foundation/run-hooks.sh | 46 ++ images/docker-stacks-foundation/start.sh | 256 +++++++++ images/julia-notebook/.dockerignore | 2 + images/julia-notebook/Dockerfile | 27 + images/julia-notebook/README.md | 14 + images/minimal-notebook/.dockerignore | 2 + images/minimal-notebook/Dockerfile | 50 ++ images/minimal-notebook/README.md | 14 + images/minimal-notebook/Rprofile.site | 4 + .../activate_notebook_custom_env.py | 24 + .../setup-scripts/setup-julia-packages.bash | 55 ++ .../setup-scripts/setup_julia.py | 97 ++++ images/pyspark-notebook/.dockerignore | 2 + images/pyspark-notebook/Dockerfile | 73 +++ images/pyspark-notebook/README.md | 15 + .../pyspark-notebook/ipython_kernel_config.py | 13 + images/pyspark-notebook/setup_spark.py | 123 ++++ images/pytorch-notebook/.dockerignore | 2 + images/pytorch-notebook/Dockerfile | 21 + images/pytorch-notebook/README.md | 8 + images/r-notebook/.dockerignore | 2 + images/r-notebook/Dockerfile | 54 ++ images/r-notebook/README.md | 14 + images/scipy-notebook/.dockerignore | 2 + images/scipy-notebook/Dockerfile | 79 +++ images/scipy-notebook/README.md | 14 + images/tensorflow-notebook/.dockerignore | 2 + images/tensorflow-notebook/Dockerfile | 17 + images/tensorflow-notebook/README.md | 15 + mypy.ini | 46 ++ requirements-dev.txt | 10 + tagging/README.md | 126 +++++ tagging/__init__.py | 0 tagging/apply_tags.py | 77 +++ tagging/docker_runner.py | 58 ++ tagging/get_platform.py | 21 + tagging/get_taggers_and_manifests.py | 23 + tagging/git_helper.py | 25 + tagging/images_hierarchy.py | 93 ++++ tagging/manifests.py | 121 ++++ tagging/merge_tags.py | 72 +++ tagging/taggers.py | 130 +++++ tagging/update_wiki.py | 130 +++++ tagging/write_manifest.py | 150 +++++ tagging/write_tags_file.py | 75 +++ tests/README.md | 3 + tests/R_mimetype_check.py | 24 + tests/__init__.py | 0 .../all-spark-notebook/data/issue_1168.ipynb | 61 ++ .../data/local_pyspark.ipynb | 43 ++ .../data/local_sparkR.ipynb | 41 ++ .../data/local_sparklyr.ipynb | 43 ++ .../test_spark_notebooks.py | 40 ++ tests/base-notebook/test_container_options.py | 115 ++++ tests/base-notebook/test_healthcheck.py | 159 ++++++ tests/base-notebook/test_notebook.py | 16 + .../base-notebook/test_npm_package_manager.py | 9 + tests/base-notebook/test_pandoc.py | 17 + tests/base-notebook/test_start_container.py | 85 +++ tests/conftest.py | 157 ++++++ .../test_julia_datascience.py | 8 + tests/datascience-notebook/test_mimetypes.py | 9 + .../test_pluto_datascience.py | 13 + .../run-hooks-change/a.sh | 6 + .../run-hooks-change/b.sh | 8 + .../run-hooks-change/c.sh | 5 + .../run-hooks-executables/executable.py | 5 + .../run-hooks-executables/non_executable.py | 5 + .../run-hooks-executables/run-me.sh | 5 + .../run-hooks-failures/a.sh | 11 + .../run-hooks-failures/b.py | 12 + .../run-hooks-failures/c.sh | 7 + .../run-hooks-failures/d.sh | 11 + .../run-hooks-unset/a.sh | 6 + .../run-hooks-unset/b.sh | 7 + .../run-hooks-unset/c.sh | 5 + .../docker-stacks-foundation/test_outdated.py | 22 + .../test_package_managers.py | 22 + .../docker-stacks-foundation/test_packages.py | 193 +++++++ .../test_python_version.py | 34 ++ .../test_run_hooks.py | 147 +++++ tests/docker-stacks-foundation/test_units.py | 38 ++ .../test_user_options.py | 307 ++++++++++ tests/images_hierarchy.py | 34 ++ tests/julia-notebook/test_julia.py | 8 + tests/julia-notebook/test_pluto.py | 13 + tests/minimal-notebook/data/Jupyter_logo.svg | 90 +++ .../minimal-notebook/data/notebook_math.ipynb | 138 +++++ .../minimal-notebook/data/notebook_svg.ipynb | 43 ++ tests/minimal-notebook/test_nbconvert.py | 34 ++ tests/package_helper.py | 209 +++++++ tests/pluto_check.py | 30 + tests/pyspark-notebook/test_spark.py | 14 + .../units/unit_pandas_version.py | 5 + tests/pyspark-notebook/units/unit_spark.py | 3 + tests/pytest.ini | 8 + tests/pytorch-notebook/units/unit_pytorch.py | 5 + tests/r-notebook/test_R_mimetypes.py | 9 + tests/run_command.py | 22 + tests/run_tests.py | 59 ++ .../scipy-notebook/data/cython/helloworld.pyx | 1 + tests/scipy-notebook/data/cython/setup.py | 6 + .../data/matplotlib/matplotlib_1.py | 26 + .../data/matplotlib/matplotlib_fonts_1.py | 25 + tests/scipy-notebook/test_cython.py | 25 + tests/scipy-notebook/test_extensions.py | 34 ++ tests/scipy-notebook/test_matplotlib.py | 55 ++ tests/scipy-notebook/units/unit_pandas.py | 7 + .../units/unit_tensorflow.py | 6 + 235 files changed, 12493 insertions(+) create mode 100644 .flake8 create mode 100644 .gitattributes create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml create mode 100644 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yml create mode 100644 .github/actions/create-dev-env/action.yml create mode 100644 .github/actions/load-image/action.yml create mode 100644 .github/dependabot.yml create mode 100644 .github/pull_request_template.md create mode 100644 .github/workflows/aarch64-setup.yml create mode 100644 .github/workflows/contributed-recipes.yml create mode 100644 .github/workflows/docker-build-test-upload.yml create mode 100644 .github/workflows/docker-merge-tags.yml create mode 100644 .github/workflows/docker-tag-push.yml create mode 100644 .github/workflows/docker-wiki-update.yml create mode 100644 .github/workflows/docker.yml create mode 100644 .github/workflows/pre-commit.yml create mode 100644 .github/workflows/registry-move.yml create mode 100644 .github/workflows/registry-overviews.yml create mode 100644 .github/workflows/sphinx.yml create mode 100644 .gitignore create mode 100644 .hadolint.yaml create mode 100644 .markdownlint.yaml create mode 100644 .pre-commit-config.yaml create mode 100644 .readthedocs.yaml create mode 100644 CODE_OF_CONDUCT.md create mode 100644 CONTRIBUTING.md create mode 100644 LICENSE.md create mode 100644 Makefile create mode 100644 README.md create mode 100755 aarch64-runner/setup.sh create mode 100644 binder/Dockerfile create mode 100644 binder/README.ipynb create mode 100644 docs/_static/contributing/stacks/docker-org-create-token.png create mode 100644 docs/_static/contributing/stacks/docker-org-security.png create mode 100644 docs/_static/contributing/stacks/docker-repo-name.png create mode 100644 docs/_static/contributing/stacks/docker-user-dropdown.png create mode 100644 docs/_static/contributing/stacks/github-actions-tab.png create mode 100644 docs/_static/contributing/stacks/github-actions-workflow.png create mode 100644 docs/_static/contributing/stacks/github-create-secrets.png create mode 100644 docs/_static/contributing/stacks/github-secret-token.png create mode 100644 docs/_static/jupyter-logo.svg create mode 100644 docs/_static/using/troubleshooting/vscode-jupyter-settings.png create mode 100644 docs/conf.py create mode 100644 docs/contributing/features.md create mode 100644 docs/contributing/issues.md create mode 100644 docs/contributing/lint.md create mode 100644 docs/contributing/packages.md create mode 100644 docs/contributing/recipes.md create mode 100644 docs/contributing/stacks.md create mode 100644 docs/contributing/tests.md create mode 100644 docs/images/inherit.svg create mode 100644 docs/index.rst create mode 100644 docs/maintaining/aarch64-runner.md create mode 100644 docs/maintaining/new-images-and-packages-policy.md create mode 100644 docs/maintaining/tasks.md create mode 100644 docs/requirements.txt create mode 100644 docs/using/common.md create mode 100644 docs/using/faq.md create mode 100644 docs/using/recipe_code/custom_environment.dockerfile create mode 100644 docs/using/recipe_code/dask_jupyterlab.dockerfile create mode 100755 docs/using/recipe_code/generate_matrix.py create mode 100644 docs/using/recipe_code/jupyterhub_version.dockerfile create mode 100644 docs/using/recipe_code/mamba_install.dockerfile create mode 100644 docs/using/recipe_code/manpage_install.dockerfile create mode 100644 docs/using/recipe_code/microsoft_odbc.dockerfile create mode 100644 docs/using/recipe_code/oracledb.dockerfile create mode 100644 docs/using/recipe_code/pip_install.dockerfile create mode 100644 docs/using/recipe_code/requirements.txt create mode 100644 docs/using/recipe_code/rise_jupyterlab.dockerfile create mode 100644 docs/using/recipe_code/spellcheck_notebook_v6.dockerfile create mode 100644 docs/using/recipe_code/xgboost.dockerfile create mode 100644 docs/using/recipes.md create mode 100644 docs/using/running.md create mode 100644 docs/using/selecting.md create mode 100644 docs/using/specifics.md create mode 100644 docs/using/troubleshooting.md create mode 100644 examples/README.md create mode 100644 examples/docker-compose/README.md create mode 100755 examples/docker-compose/bin/letsencrypt.sh create mode 100755 examples/docker-compose/bin/sl-dns.sh create mode 100755 examples/docker-compose/bin/softlayer.sh create mode 100755 examples/docker-compose/bin/vbox.sh create mode 100644 examples/docker-compose/notebook/Dockerfile create mode 100755 examples/docker-compose/notebook/build.sh create mode 100755 examples/docker-compose/notebook/down.sh create mode 100755 examples/docker-compose/notebook/env.sh create mode 100644 examples/docker-compose/notebook/letsencrypt-notebook.yml create mode 100644 examples/docker-compose/notebook/notebook.yml create mode 100644 examples/docker-compose/notebook/secure-notebook.yml create mode 100755 examples/docker-compose/notebook/up.sh create mode 100644 examples/make-deploy/Dockerfile create mode 100644 examples/make-deploy/Makefile create mode 100644 examples/make-deploy/README.md create mode 100644 examples/make-deploy/letsencrypt.makefile create mode 100644 examples/make-deploy/self-signed.makefile create mode 100644 examples/make-deploy/softlayer.makefile create mode 100644 examples/make-deploy/virtualbox.makefile create mode 100644 examples/openshift/README.md create mode 100644 examples/openshift/templates.json create mode 100644 examples/source-to-image/README.md create mode 100755 examples/source-to-image/assemble create mode 100755 examples/source-to-image/run create mode 100755 examples/source-to-image/save-artifacts create mode 100644 examples/source-to-image/templates.json create mode 100644 images/all-spark-notebook/.dockerignore create mode 100644 images/all-spark-notebook/Dockerfile create mode 100644 images/all-spark-notebook/README.md create mode 100644 images/base-notebook/.dockerignore create mode 100644 images/base-notebook/Dockerfile create mode 100644 images/base-notebook/README.md create mode 100755 images/base-notebook/docker_healthcheck.py create mode 100644 images/base-notebook/jupyter_server_config.py create mode 100755 images/base-notebook/start-notebook.py create mode 100755 images/base-notebook/start-notebook.sh create mode 100755 images/base-notebook/start-singleuser.py create mode 100755 images/base-notebook/start-singleuser.sh create mode 100644 images/datascience-notebook/.dockerignore create mode 100644 images/datascience-notebook/Dockerfile create mode 100644 images/datascience-notebook/README.md create mode 100644 images/docker-stacks-foundation/.dockerignore create mode 100755 images/docker-stacks-foundation/10activate-conda-env.sh create mode 100644 images/docker-stacks-foundation/Dockerfile create mode 100644 images/docker-stacks-foundation/README.md create mode 100755 images/docker-stacks-foundation/fix-permissions create mode 100644 images/docker-stacks-foundation/initial-condarc create mode 100755 images/docker-stacks-foundation/run-hooks.sh create mode 100755 images/docker-stacks-foundation/start.sh create mode 100644 images/julia-notebook/.dockerignore create mode 100644 images/julia-notebook/Dockerfile create mode 100644 images/julia-notebook/README.md create mode 100644 images/minimal-notebook/.dockerignore create mode 100644 images/minimal-notebook/Dockerfile create mode 100644 images/minimal-notebook/README.md create mode 100644 images/minimal-notebook/Rprofile.site create mode 100755 images/minimal-notebook/setup-scripts/activate_notebook_custom_env.py create mode 100755 images/minimal-notebook/setup-scripts/setup-julia-packages.bash create mode 100755 images/minimal-notebook/setup-scripts/setup_julia.py create mode 100644 images/pyspark-notebook/.dockerignore create mode 100644 images/pyspark-notebook/Dockerfile create mode 100644 images/pyspark-notebook/README.md create mode 100644 images/pyspark-notebook/ipython_kernel_config.py create mode 100755 images/pyspark-notebook/setup_spark.py create mode 100644 images/pytorch-notebook/.dockerignore create mode 100644 images/pytorch-notebook/Dockerfile create mode 100644 images/pytorch-notebook/README.md create mode 100644 images/r-notebook/.dockerignore create mode 100644 images/r-notebook/Dockerfile create mode 100644 images/r-notebook/README.md create mode 100644 images/scipy-notebook/.dockerignore create mode 100644 images/scipy-notebook/Dockerfile create mode 100644 images/scipy-notebook/README.md create mode 100644 images/tensorflow-notebook/.dockerignore create mode 100644 images/tensorflow-notebook/Dockerfile create mode 100644 images/tensorflow-notebook/README.md create mode 100644 mypy.ini create mode 100644 requirements-dev.txt create mode 100644 tagging/README.md create mode 100644 tagging/__init__.py create mode 100755 tagging/apply_tags.py create mode 100644 tagging/docker_runner.py create mode 100644 tagging/get_platform.py create mode 100644 tagging/get_taggers_and_manifests.py create mode 100755 tagging/git_helper.py create mode 100644 tagging/images_hierarchy.py create mode 100644 tagging/manifests.py create mode 100755 tagging/merge_tags.py create mode 100644 tagging/taggers.py create mode 100755 tagging/update_wiki.py create mode 100755 tagging/write_manifest.py create mode 100755 tagging/write_tags_file.py create mode 100644 tests/README.md create mode 100644 tests/R_mimetype_check.py create mode 100644 tests/__init__.py create mode 100644 tests/all-spark-notebook/data/issue_1168.ipynb create mode 100644 tests/all-spark-notebook/data/local_pyspark.ipynb create mode 100644 tests/all-spark-notebook/data/local_sparkR.ipynb create mode 100644 tests/all-spark-notebook/data/local_sparklyr.ipynb create mode 100644 tests/all-spark-notebook/test_spark_notebooks.py create mode 100644 tests/base-notebook/test_container_options.py create mode 100644 tests/base-notebook/test_healthcheck.py create mode 100644 tests/base-notebook/test_notebook.py create mode 100644 tests/base-notebook/test_npm_package_manager.py create mode 100644 tests/base-notebook/test_pandoc.py create mode 100644 tests/base-notebook/test_start_container.py create mode 100644 tests/conftest.py create mode 100644 tests/datascience-notebook/test_julia_datascience.py create mode 100644 tests/datascience-notebook/test_mimetypes.py create mode 100644 tests/datascience-notebook/test_pluto_datascience.py create mode 100644 tests/docker-stacks-foundation/run-hooks-change/a.sh create mode 100644 tests/docker-stacks-foundation/run-hooks-change/b.sh create mode 100644 tests/docker-stacks-foundation/run-hooks-change/c.sh create mode 100755 tests/docker-stacks-foundation/run-hooks-executables/executable.py create mode 100644 tests/docker-stacks-foundation/run-hooks-executables/non_executable.py create mode 100644 tests/docker-stacks-foundation/run-hooks-executables/run-me.sh create mode 100644 tests/docker-stacks-foundation/run-hooks-failures/a.sh create mode 100755 tests/docker-stacks-foundation/run-hooks-failures/b.py create mode 100644 tests/docker-stacks-foundation/run-hooks-failures/c.sh create mode 100644 tests/docker-stacks-foundation/run-hooks-failures/d.sh create mode 100644 tests/docker-stacks-foundation/run-hooks-unset/a.sh create mode 100644 tests/docker-stacks-foundation/run-hooks-unset/b.sh create mode 100644 tests/docker-stacks-foundation/run-hooks-unset/c.sh create mode 100644 tests/docker-stacks-foundation/test_outdated.py create mode 100644 tests/docker-stacks-foundation/test_package_managers.py create mode 100644 tests/docker-stacks-foundation/test_packages.py create mode 100644 tests/docker-stacks-foundation/test_python_version.py create mode 100644 tests/docker-stacks-foundation/test_run_hooks.py create mode 100644 tests/docker-stacks-foundation/test_units.py create mode 100644 tests/docker-stacks-foundation/test_user_options.py create mode 100644 tests/images_hierarchy.py create mode 100644 tests/julia-notebook/test_julia.py create mode 100644 tests/julia-notebook/test_pluto.py create mode 100644 tests/minimal-notebook/data/Jupyter_logo.svg create mode 100644 tests/minimal-notebook/data/notebook_math.ipynb create mode 100644 tests/minimal-notebook/data/notebook_svg.ipynb create mode 100644 tests/minimal-notebook/test_nbconvert.py create mode 100644 tests/package_helper.py create mode 100644 tests/pluto_check.py create mode 100644 tests/pyspark-notebook/test_spark.py create mode 100644 tests/pyspark-notebook/units/unit_pandas_version.py create mode 100644 tests/pyspark-notebook/units/unit_spark.py create mode 100644 tests/pytest.ini create mode 100644 tests/pytorch-notebook/units/unit_pytorch.py create mode 100644 tests/r-notebook/test_R_mimetypes.py create mode 100644 tests/run_command.py create mode 100755 tests/run_tests.py create mode 100644 tests/scipy-notebook/data/cython/helloworld.pyx create mode 100644 tests/scipy-notebook/data/cython/setup.py create mode 100644 tests/scipy-notebook/data/matplotlib/matplotlib_1.py create mode 100644 tests/scipy-notebook/data/matplotlib/matplotlib_fonts_1.py create mode 100644 tests/scipy-notebook/test_cython.py create mode 100644 tests/scipy-notebook/test_extensions.py create mode 100644 tests/scipy-notebook/test_matplotlib.py create mode 100644 tests/scipy-notebook/units/unit_pandas.py create mode 100644 tests/tensorflow-notebook/units/unit_tensorflow.py diff --git a/.flake8 b/.flake8 new file mode 100644 index 0000000..a609f12 --- /dev/null +++ b/.flake8 @@ -0,0 +1,4 @@ +[flake8] +max-line-length = 88 +select = C, E, F, W, B, B950 +extend-ignore = E203, E501, W503 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..6313b56 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +* text=auto eol=lf diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 0000000..064028d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,129 @@ +name: Bug report +description: Create a report to help us improve +labels: ["type:Bug"] + +body: + - type: markdown + attributes: + value: | + Hi! Thanks for using the Jupyter Docker Stacks and taking some time to contribute to this project. + + We'd appreciate it if you could check out the [Troubleshooting common problems](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/troubleshooting.html) section in the documentation, + as well as [existing issues](https://github.com/jupyter/docker-stacks/issues?q=is%3Aissue) prior to submitting an issue to avoid duplication. + + Please answer the following sections to help us troubleshoot the problem. + + - type: dropdown + attributes: + label: What docker image(s) are you using? + description: Select as many images as applicable + multiple: true + options: + - all-spark-notebook + - base-notebook + - datascience-notebook + - docker-stacks-foundation + - julia-notebook + - minimal-notebook + - pyspark-notebook + - pytorch-notebook + - r-notebook + - scipy-notebook + - tensorflow-notebook + validations: + required: true + + - type: input + attributes: + label: Host OS system + placeholder: | + Example: + Ubuntu 22.04 + validations: + required: true + + - type: dropdown + attributes: + label: Host architecture + options: + - x86_64 + - aarch64 + validations: + required: true + + - type: textarea + attributes: + label: What Docker command are you running? + description: | + What complete docker command do you run to launch the container (omitting sensitive values)? + placeholder: | + Example: + `docker run -it --rm -p 8888:8888 quay.io/jupyter/base-notebook` + validations: + required: true + + - type: textarea + attributes: + label: How to Reproduce the problem? + description: Please provide steps to reproduce this bug (once the container is running). + placeholder: | + Example: + + 1. Visit + + 2. Start an R notebook + + 3. ... + validations: + required: true + + - type: textarea + attributes: + label: Command output + render: bash session + description: | + Provide the output of the steps above, including the commands + themselves and Docker's output/traceback etc. If you're familiar with + Markdown, this block will have triple backticks added automatically + around it -- you don't have to add them. + + If you want to present output from multiple commands, please present + that as a shell session (commands you run get prefixed with `$ `). + Please also ensure that the "How to reproduce" section contains matching + instructions for reproducing this. + + - type: textarea + attributes: + label: Expected behavior + description: | + A clear and concise description of what you expected to happen. + placeholder: | + Example: `ggplot` output appears in my notebook. + + - type: textarea + attributes: + label: Actual behavior + description: | + A clear and concise description of what the bug is. + placeholder: | + Example: No output is visible in the notebook and the Server log contains messages about ... + validations: + required: true + + - type: textarea + attributes: + label: Anything else? + description: | + Links? References? Anything that will give us more context about the issue you are encountering! + + Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in. + validations: + required: false + + - type: checkboxes + attributes: + label: Latest Docker version + description: You should try to use the latest Docker version + options: + - label: I've updated my Docker version to the latest available, and the issue persists + required: true diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..91e87b3 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,14 @@ +blank_issues_enabled: false +contact_links: + - name: 📖 - Jupyter Docker Stacks documentation + url: https://jupyter-docker-stacks.readthedocs.io/en/latest/index.html + about: Go to the project's documentation + - name: 🔍 - Troubleshooting common problems + url: https://jupyter-docker-stacks.readthedocs.io/en/latest/using/troubleshooting.html + about: Documentation section on troubleshooting commonly encountered errors + - name: 💬 - Jupyter community Discourse + url: https://discourse.jupyter.org/ + about: Interact with the rest of the Jupyter community + - name: (maintainers only) Blank issue + url: https://github.com/jupyter/docker-stacks/issues/new + about: For maintainers only diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 0000000..f0da406 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,67 @@ +name: Feature request +description: Suggest a new feature for this project +labels: ["type:Enhancement"] + +body: + - type: markdown + attributes: + value: | + Hi! Thanks for using the Jupyter Docker Stacks and taking some time to contribute to this project. + + We'd appreciate it if you could check out the [Suggesting a new feature](https://jupyter-docker-stacks.readthedocs.io/en/latest/contributing/features.html#suggesting-a-new-feature) + section in the documentation for our preferred processes before submitting a feature request. + + - type: dropdown + attributes: + label: What docker image(s) is this feature applicable to? + description: Select as many images as applicable + multiple: true + options: + - all-spark-notebook + - base-notebook + - datascience-notebook + - docker-stacks-foundation + - julia-notebook + - minimal-notebook + - pyspark-notebook + - pytorch-notebook + - r-notebook + - scipy-notebook + - tensorflow-notebook + - new community stack + validations: + required: true + + - type: textarea + attributes: + label: What change(s) are you proposing? + description: | + Be concise and feel free to add supporting links or references. + placeholder: | + Example: + - Add the [altair](https://altair-viz.github.io) package to the image. + validations: + required: true + + - type: textarea + attributes: + label: How does this affect the user? + description: | + How will the proposed feature affect the user's workflow? + How will this feature make the image more robust, secure, etc.? + placeholder: | + Example: + - Altair is a declarative statistical visualization library for Python, based on Vega and Vega-Lite, and the source is available on GitHub. + - With Altair, you can spend more time understanding your data and its meaning. + - Altair's API is simple, friendly, and consistent and built on top of the powerful Vega-Lite visualization grammar. + - This elegant simplicity produces beautiful and effective visualizations with a minimal amount of code. + validations: + required: true + + - type: textarea + attributes: + label: Anything else? + description: | + Links? References? Anything that will give us more context about the feature you are proposing. + validations: + required: false diff --git a/.github/actions/create-dev-env/action.yml b/.github/actions/create-dev-env/action.yml new file mode 100644 index 0000000..7323494 --- /dev/null +++ b/.github/actions/create-dev-env/action.yml @@ -0,0 +1,20 @@ +name: Build environment +description: Create a build environment + +runs: + using: composite + steps: + # actions/setup-python doesn't support Linux aarch64 runners + # See: https://github.com/actions/setup-python/issues/108 + # python3 is manually preinstalled in the aarch64 VM self-hosted runner + - name: Set Up Python 🐍 + uses: actions/setup-python@v5 + with: + python-version: 3.x + if: runner.arch == 'X64' + + - name: Install Dev Dependencies 📦 + run: | + pip install --upgrade pip + pip install --upgrade -r requirements-dev.txt + shell: bash diff --git a/.github/actions/load-image/action.yml b/.github/actions/load-image/action.yml new file mode 100644 index 0000000..cbf5a8a --- /dev/null +++ b/.github/actions/load-image/action.yml @@ -0,0 +1,24 @@ +name: Load Docker image +description: Download the image tar and load it to Docker + +inputs: + image: + description: Image name + required: true + platform: + description: Image platform + required: true + +runs: + using: composite + steps: + - name: Download built image 📥 + uses: actions/download-artifact@v4 + with: + name: ${{ inputs.image }}-${{ inputs.platform }} + path: /tmp/jupyter/images/ + - name: Load downloaded image to docker 📥 + run: | + zstd --uncompress --stdout --rm /tmp/jupyter/images/${{ inputs.image }}-${{ inputs.platform }}.tar.zst | docker load + docker image ls --all + shell: bash diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..8f17357 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,19 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file + +version: 2 +updates: + - package-ecosystem: github-actions + directory: / + schedule: + interval: weekly + - package-ecosystem: github-actions + directory: .github/actions/create-dev-env/ + schedule: + interval: weekly + - package-ecosystem: github-actions + directory: .github/actions/load-image/ + schedule: + interval: weekly diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..f034359 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,14 @@ +## Describe your changes + +## Issue ticket if applicable + + + +## Checklist (especially for first-time contributors) + +- [ ] I have performed a self-review of my code +- [ ] If it is a core feature, I have added thorough tests +- [ ] I will try not to use force-push to make the review process easier for reviewers +- [ ] I have updated the documentation for significant changes + + diff --git a/.github/workflows/aarch64-setup.yml b/.github/workflows/aarch64-setup.yml new file mode 100644 index 0000000..441a9aa --- /dev/null +++ b/.github/workflows/aarch64-setup.yml @@ -0,0 +1,30 @@ +name: Test aarch64-runner setup script + +on: + schedule: + # Weekly, at 03:00 on Monday UTC + - cron: "0 3 * * 1" + pull_request: + paths: + - ".github/workflows/aarch64-setup.yml" + - "aarch64-runner/setup.sh" + push: + branches: + - main + paths: + - ".github/workflows/aarch64-setup.yml" + - "aarch64-runner/setup.sh" + workflow_dispatch: + +jobs: + test-script: + # The script itself is not aarch64-specific + # It is easier to test on ubuntu-latest + runs-on: ubuntu-latest + + steps: + - name: Checkout Repo ⚡️ + uses: actions/checkout@v4 + + - name: Run setup script ✅ + run: sudo ./aarch64-runner/setup.sh diff --git a/.github/workflows/contributed-recipes.yml b/.github/workflows/contributed-recipes.yml new file mode 100644 index 0000000..100ed11 --- /dev/null +++ b/.github/workflows/contributed-recipes.yml @@ -0,0 +1,55 @@ +name: Test the contributed recipes + +on: + schedule: + # Images are rebuilt at 03:00 on Monday UTC + # So we're testing recipes one hour in advance + # They will also be tested after building images + - cron: "0 2 * * 1" + pull_request: + paths: + - ".github/workflows/contributed-recipes.yml" + - "docs/using/recipe_code/**" + push: + branches: + - main + paths: + - ".github/workflows/contributed-recipes.yml" + - "docs/using/recipe_code/**" + workflow_dispatch: + workflow_call: + +jobs: + generate-matrix: + runs-on: ubuntu-latest + outputs: + matrix: ${{ steps.set-matrix.outputs.matrix }} + steps: + - name: Checkout Repo ⚡️ + uses: actions/checkout@v4 + + - name: Calculate recipes matrix 🛠 + id: set-matrix + run: docs/using/recipe_code/generate_matrix.py >> "${GITHUB_OUTPUT}" + + test-recipes: + runs-on: ${{ matrix.runs-on }} + needs: generate-matrix + if: github.repository_owner == 'jupyter' + + steps: + - name: Checkout Repo ⚡️ + uses: actions/checkout@v4 + + - name: Build recipe 🛠 + # We're pulling here to avoid accidentally using an image that might be present on aarch64 self-hosted runner + run: docker build --pull --rm --force-rm --tag my-custom-image -f ./${{ matrix.dockerfile }} ./ + env: + DOCKER_BUILDKIT: 1 + # Full logs for CI build + BUILDKIT_PROGRESS: plain + working-directory: docs/using/recipe_code + shell: bash + + strategy: + matrix: ${{ fromJson(needs.generate-matrix.outputs.matrix) }} diff --git a/.github/workflows/docker-build-test-upload.yml b/.github/workflows/docker-build-test-upload.yml new file mode 100644 index 0000000..01520d3 --- /dev/null +++ b/.github/workflows/docker-build-test-upload.yml @@ -0,0 +1,110 @@ +name: Download a parent image, build a new one, and test it; then upload the image, tags, and manifests to GitHub artifacts + +env: + REGISTRY: quay.io + OWNER: ${{ github.repository_owner }} + +on: + workflow_call: + inputs: + parent-image: + description: Parent image name + required: true + type: string + image: + description: Image name + required: true + type: string + platform: + description: Image platform + required: true + type: string + runs-on: + description: GitHub Actions Runner image + required: true + type: string + +jobs: + build-test-upload: + runs-on: ${{ inputs.runs-on }} + + steps: + - name: Checkout Repo ⚡️ + uses: actions/checkout@v4 + - name: Create dev environment 📦 + uses: ./.github/actions/create-dev-env + + # Self-hosted runners share a state (whole VM) between runs + # Also, they might have running or stopped containers, + # which are not cleaned up by `docker system prune` + - name: Reset docker state and cleanup artifacts 🗑️ + if: inputs.platform != 'x86_64' + run: | + docker kill $(docker ps --quiet) || true + docker rm $(docker ps --all --quiet) || true + docker system prune --all --force + rm -rf /tmp/jupyter/ + shell: bash + + - name: Load parent built image to Docker 📥 + if: inputs.parent-image != '' + uses: ./.github/actions/load-image + with: + image: ${{ inputs.parent-image }} + platform: ${{ inputs.platform }} + + - name: Pull ubuntu:22.04 image 📥 + if: inputs.parent-image == '' + run: docker pull ubuntu:22.04 + shell: bash + + - name: Build image 🛠 + run: docker build --rm --force-rm --tag ${{ env.REGISTRY }}/${{ env.OWNER }}/${{ inputs.image }} images/${{ inputs.image }}/ --build-arg REGISTRY=${{ env.REGISTRY }} --build-arg OWNER=${{ env.OWNER }} + env: + DOCKER_BUILDKIT: 1 + # Full logs for CI build + BUILDKIT_PROGRESS: plain + shell: bash + + - name: Run tests ✅ + run: python3 -m tests.run_tests --short-image-name ${{ inputs.image }} --registry ${{ env.REGISTRY }} --owner ${{ env.OWNER }} + shell: bash + + - name: Write tags file 🏷 + run: | + python3 -m tagging.write_tags_file --short-image-name ${{ inputs.image }} --tags-dir /tmp/jupyter/tags/ --registry ${{ env.REGISTRY }} --owner ${{ env.OWNER }} + shell: bash + - name: Upload tags file 💾 + uses: actions/upload-artifact@v4 + with: + name: ${{ inputs.image }}-${{ inputs.platform }}-tags + path: /tmp/jupyter/tags/${{ inputs.platform }}-${{ inputs.image }}.txt + retention-days: 3 + + - name: Write manifest and build history file 🏷 + run: python3 -m tagging.write_manifest --short-image-name ${{ inputs.image }} --hist-lines-dir /tmp/jupyter/hist_lines/ --manifests-dir /tmp/jupyter/manifests/ --registry ${{ env.REGISTRY }} --owner ${{ env.OWNER }} + shell: bash + - name: Upload manifest file 💾 + uses: actions/upload-artifact@v4 + with: + name: ${{ inputs.image }}-${{ inputs.platform }}-manifest + path: /tmp/jupyter/manifests/${{ inputs.platform }}-${{ inputs.image }}-*.md + retention-days: 3 + - name: Upload build history line 💾 + uses: actions/upload-artifact@v4 + with: + name: ${{ inputs.image }}-${{ inputs.platform }}-history_line + path: /tmp/jupyter/hist_lines/${{ inputs.platform }}-${{ inputs.image }}-*.txt + retention-days: 3 + + - name: Save image as a tar for later use 💾 + run: | + mkdir -p /tmp/jupyter/images/ + docker save ${{ env.REGISTRY }}/${{ env.OWNER }}/${{ inputs.image }} | zstd > /tmp/jupyter/images/${{ inputs.image }}-${{ inputs.platform }}.tar.zst + shell: bash + - name: Upload image as artifact 💾 + uses: actions/upload-artifact@v4 + with: + name: ${{ inputs.image }}-${{ inputs.platform }} + path: /tmp/jupyter/images/${{ inputs.image }}-${{ inputs.platform }}.tar.zst + retention-days: 3 diff --git a/.github/workflows/docker-merge-tags.yml b/.github/workflows/docker-merge-tags.yml new file mode 100644 index 0000000..038dbff --- /dev/null +++ b/.github/workflows/docker-merge-tags.yml @@ -0,0 +1,61 @@ +name: Download all tags from GitHub artifacts and create multi-platform manifests + +env: + OWNER: ${{ github.repository_owner }} + PUSH_TO_REGISTRY: ${{ (github.repository_owner == 'jupyter' || github.repository_owner == 'mathbunnyru') && (github.ref == 'refs/heads/main' || github.event_name == 'schedule') }} + +on: + workflow_call: + inputs: + image: + description: Image name + required: true + type: string + secrets: + REGISTRY_USERNAME: + required: true + REGISTRY_TOKEN: + required: true + +jobs: + merge-tags: + runs-on: ubuntu-latest + + steps: + - name: Checkout Repo ⚡️ + uses: actions/checkout@v4 + - name: Create dev environment 📦 + uses: ./.github/actions/create-dev-env + + - name: Download x86_64 tags file 📥 + uses: actions/download-artifact@v4 + with: + name: ${{ inputs.image }}-x86_64-tags + path: /tmp/jupyter/tags/ + - name: Download aarch64 tags file 📥 + uses: actions/download-artifact@v4 + with: + name: ${{ inputs.image }}-aarch64-tags + path: /tmp/jupyter/tags/ + + # Docker might be stuck when pulling images + # https://github.com/docker/for-mac/issues/2083 + # https://stackoverflow.com/questions/38087027/docker-compose-stuck-downloading-or-pulling-fs-layer + - name: Reset docker state 🗑️ + run: | + docker system prune --all --force + sudo systemctl restart docker + shell: bash + + - name: Login to Registry 🔐 + if: env.PUSH_TO_REGISTRY == 'true' + uses: docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d # v3.0.0 + with: + registry: quay.io + username: ${{ secrets.REGISTRY_USERNAME }} + password: ${{ secrets.REGISTRY_TOKEN }} + + - name: Merge tags for the images 🔀 + if: env.PUSH_TO_REGISTRY == 'true' + run: python3 -m tagging.merge_tags --short-image-name ${{ inputs.image }} --tags-dir /tmp/jupyter/tags/ + shell: bash diff --git a/.github/workflows/docker-tag-push.yml b/.github/workflows/docker-tag-push.yml new file mode 100644 index 0000000..b68a8d1 --- /dev/null +++ b/.github/workflows/docker-tag-push.yml @@ -0,0 +1,62 @@ +name: Download a Docker image and its tags from GitHub artifacts, apply them, and push the image to the Registry + +env: + REGISTRY: quay.io + OWNER: ${{ github.repository_owner }} + PUSH_TO_REGISTRY: ${{ (github.repository_owner == 'jupyter' || github.repository_owner == 'mathbunnyru') && (github.ref == 'refs/heads/main' || github.event_name == 'schedule') }} + +on: + workflow_call: + inputs: + image: + description: Image name + required: true + type: string + platform: + description: Image platform + required: true + type: string + secrets: + REGISTRY_USERNAME: + required: true + REGISTRY_TOKEN: + required: true + +jobs: + tag-push: + runs-on: ubuntu-latest + + steps: + - name: Checkout Repo ⚡️ + uses: actions/checkout@v4 + - name: Create dev environment 📦 + uses: ./.github/actions/create-dev-env + - name: Load image to Docker 📥 + uses: ./.github/actions/load-image + with: + image: ${{ inputs.image }} + platform: ${{ inputs.platform }} + + - name: Login to Registry 🔐 + if: env.PUSH_TO_REGISTRY == 'true' + uses: docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d # v3.0.0 + with: + registry: quay.io + username: ${{ secrets.REGISTRY_USERNAME }} + password: ${{ secrets.REGISTRY_TOKEN }} + + - name: Download tags file 📥 + uses: actions/download-artifact@v4 + with: + name: ${{ inputs.image }}-${{ inputs.platform }}-tags + path: /tmp/jupyter/tags/ + - name: Apply tags to the loaded image 🏷 + run: python3 -m tagging.apply_tags --short-image-name ${{ inputs.image }} --tags-dir /tmp/jupyter/tags/ --platform ${{ inputs.platform }} --registry ${{ env.REGISTRY }} --owner ${{ env.OWNER }} + # This step is needed to prevent pushing non-multi-arch "latest" tag + - name: Remove the "latest" tag from the image 🗑️ + run: docker image rmi ${{ env.REGISTRY }}/${{ env.OWNER }}/${{ inputs.image }}:latest + + - name: Push Images to Registry 📤 + if: env.PUSH_TO_REGISTRY == 'true' + run: docker push --all-tags ${{ env.REGISTRY }}/${{ env.OWNER }}/${{ inputs.image }} + shell: bash diff --git a/.github/workflows/docker-wiki-update.yml b/.github/workflows/docker-wiki-update.yml new file mode 100644 index 0000000..b5bd0cb --- /dev/null +++ b/.github/workflows/docker-wiki-update.yml @@ -0,0 +1,48 @@ +name: Download build manifests from GitHub artifacts and push them to GitHub wiki +# We're doing everything in one workflow on purpose +# This way we make sure we don't access wiki pages from several jobs simultaneously + +env: + PUSH_TO_REGISTRY: ${{ (github.repository_owner == 'jupyter' || github.repository_owner == 'mathbunnyru') && (github.ref == 'refs/heads/main' || github.event_name == 'schedule') }} + +on: + workflow_call: + +jobs: + wiki-update: + runs-on: ubuntu-latest + + steps: + - name: Checkout Repo ⚡️ + uses: actions/checkout@v4 + - name: Create dev environment 📦 + uses: ./.github/actions/create-dev-env + + - name: Download all history lines 📥 + uses: actions/download-artifact@v4 + with: + pattern: "*-history_line" + path: /tmp/jupyter/hist_lines/ + + - name: Download all manifests 📥 + uses: actions/download-artifact@v4 + with: + pattern: "*-manifest" + path: /tmp/jupyter/manifests/ + + - name: Checkout Wiki Repo 📃 + uses: actions/checkout@v4 + with: + repository: ${{ github.repository }}.wiki + path: wiki/ + + - name: Update wiki 🏷 + run: python3 -m tagging.update_wiki --wiki-dir wiki/ --hist-lines-dir /tmp/jupyter/hist_lines/ --manifests-dir /tmp/jupyter/manifests/ + shell: bash + + - name: Push Wiki to GitHub 📤 + if: env.PUSH_TO_REGISTRY == 'true' + uses: stefanzweifel/git-auto-commit-action@8756aa072ef5b4a080af5dc8fef36c5d586e521d # v5.0.0 + with: + commit_message: "Automated wiki publish for ${{ github.sha }}" + repository: wiki/ diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml new file mode 100644 index 0000000..a38058c --- /dev/null +++ b/.github/workflows/docker.yml @@ -0,0 +1,443 @@ +name: Build, test, and push Docker Images + +# [FAST_BUILD] in the PR title makes this workflow only build +# the `jupyter/docker-stacks-foundation` and `jupyter/base-notebook` images +# This allows to run CI faster if a full build is not required +# This only works for a `pull_request` event and does not affect `push` to the `main` branch + +on: + schedule: + # Weekly, at 03:00 on Monday UTC + - cron: "0 3 * * 1" + pull_request: + paths: + - ".github/workflows/docker.yml" + # We use local reusable workflows to make architecture clean and simple + # https://docs.github.com/en/actions/using-workflows/reusing-workflows + - ".github/workflows/docker-build-test-upload.yml" + - ".github/workflows/docker-merge-tags.yml" + - ".github/workflows/docker-tag-push.yml" + - ".github/workflows/docker-wiki-update.yml" + + # We use local composite actions to combine multiple workflow steps within one action + # https://docs.github.com/en/actions/creating-actions/about-custom-actions#composite-actions + - ".github/actions/create-dev-env/action.yml" + - ".github/actions/load-image/action.yml" + + - "images/**" + - "!images/*/README.md" + - "tagging/**" + - "!tagging/README.md" + - "tests/**" + - "!tests/README.md" + - "requirements-dev.txt" + push: + branches: + - main + paths: + - ".github/workflows/docker.yml" + - ".github/workflows/docker-build-test-upload.yml" + - ".github/workflows/docker-merge-tags.yml" + - ".github/workflows/docker-tag-push.yml" + - ".github/workflows/docker-wiki-update.yml" + + - ".github/actions/create-dev-env/action.yml" + - ".github/actions/load-image/action.yml" + + - "images/**" + - "!images/*/README.md" + - "tagging/**" + - "!tagging/README.md" + - "tests/**" + - "!tests/README.md" + - "requirements-dev.txt" + workflow_dispatch: + +# https://docs.github.com/en/actions/using-jobs/using-concurrency +concurrency: + # Only cancel in-progress jobs or runs for the current workflow - matches against branch & tags + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + aarch64-foundation: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: "" + image: docker-stacks-foundation + platform: aarch64 + runs-on: ARM64_FAST + if: github.repository_owner == 'jupyter' + + x86_64-foundation: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: "" + image: docker-stacks-foundation + platform: x86_64 + runs-on: ubuntu-latest + + aarch64-base: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: docker-stacks-foundation + image: base-notebook + platform: aarch64 + runs-on: ARM64_FAST + needs: [aarch64-foundation] + if: github.repository_owner == 'jupyter' + + x86_64-base: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: docker-stacks-foundation + image: base-notebook + platform: x86_64 + runs-on: ubuntu-latest + needs: [x86_64-foundation] + + aarch64-minimal: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: base-notebook + image: minimal-notebook + platform: aarch64 + runs-on: ARM64_FAST + needs: [aarch64-base] + if: github.repository_owner == 'jupyter' && !contains(github.event.pull_request.title, '[FAST_BUILD]') + + x86_64-minimal: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: base-notebook + image: minimal-notebook + platform: x86_64 + runs-on: ubuntu-latest + needs: [x86_64-base] + if: ${{ !contains(github.event.pull_request.title, '[FAST_BUILD]') }} + + aarch64-scipy: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: minimal-notebook + image: scipy-notebook + platform: aarch64 + runs-on: ARM64_FAST + needs: [aarch64-minimal] + if: github.repository_owner == 'jupyter' && !contains(github.event.pull_request.title, '[FAST_BUILD]') + + x86_64-scipy: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: minimal-notebook + image: scipy-notebook + platform: x86_64 + runs-on: ubuntu-latest + needs: [x86_64-minimal] + if: ${{ !contains(github.event.pull_request.title, '[FAST_BUILD]') }} + + aarch64-r: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: minimal-notebook + image: r-notebook + platform: aarch64 + runs-on: ARM64_SLOW + needs: [aarch64-minimal] + if: github.repository_owner == 'jupyter' && !contains(github.event.pull_request.title, '[FAST_BUILD]') + + x86_64-r: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: minimal-notebook + image: r-notebook + platform: x86_64 + runs-on: ubuntu-latest + needs: [x86_64-minimal] + if: ${{ !contains(github.event.pull_request.title, '[FAST_BUILD]') }} + + aarch64-julia: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: minimal-notebook + image: julia-notebook + platform: aarch64 + runs-on: ARM64_SLOW + needs: [aarch64-minimal] + if: github.repository_owner == 'jupyter' && !contains(github.event.pull_request.title, '[FAST_BUILD]') + + x86_64-julia: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: minimal-notebook + image: julia-notebook + platform: x86_64 + runs-on: ubuntu-latest + needs: [x86_64-minimal] + if: ${{ !contains(github.event.pull_request.title, '[FAST_BUILD]') }} + + aarch64-tensorflow: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: scipy-notebook + image: tensorflow-notebook + platform: aarch64 + runs-on: ARM64_SLOW + needs: [aarch64-scipy] + if: github.repository_owner == 'jupyter' && !contains(github.event.pull_request.title, '[FAST_BUILD]') + + x86_64-tensorflow: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: scipy-notebook + image: tensorflow-notebook + platform: x86_64 + runs-on: ubuntu-latest + needs: [x86_64-scipy] + if: ${{ !contains(github.event.pull_request.title, '[FAST_BUILD]') }} + + aarch64-pytorch: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: scipy-notebook + image: pytorch-notebook + platform: aarch64 + runs-on: ARM64_SLOW + needs: [aarch64-scipy] + if: github.repository_owner == 'jupyter' && !contains(github.event.pull_request.title, '[FAST_BUILD]') + + x86_64-pytorch: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: scipy-notebook + image: pytorch-notebook + platform: x86_64 + runs-on: ubuntu-latest + needs: [x86_64-scipy] + if: ${{ !contains(github.event.pull_request.title, '[FAST_BUILD]') }} + + aarch64-datascience: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: scipy-notebook + image: datascience-notebook + platform: aarch64 + runs-on: ARM64_SLOW + needs: [aarch64-scipy] + if: github.repository_owner == 'jupyter' && !contains(github.event.pull_request.title, '[FAST_BUILD]') + + x86_64-datascience: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: scipy-notebook + image: datascience-notebook + platform: x86_64 + runs-on: ubuntu-latest + needs: [x86_64-scipy] + if: ${{ !contains(github.event.pull_request.title, '[FAST_BUILD]') }} + + aarch64-pyspark: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: scipy-notebook + image: pyspark-notebook + platform: aarch64 + runs-on: ARM64_FAST + needs: [aarch64-scipy] + if: github.repository_owner == 'jupyter' && !contains(github.event.pull_request.title, '[FAST_BUILD]') + + x86_64-pyspark: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: scipy-notebook + image: pyspark-notebook + platform: x86_64 + runs-on: ubuntu-latest + needs: [x86_64-scipy] + if: ${{ !contains(github.event.pull_request.title, '[FAST_BUILD]') }} + + aarch64-all-spark: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: pyspark-notebook + image: all-spark-notebook + platform: aarch64 + runs-on: ARM64_FAST + needs: [aarch64-pyspark] + if: github.repository_owner == 'jupyter' && !contains(github.event.pull_request.title, '[FAST_BUILD]') + + x86_64-all-spark: + uses: ./.github/workflows/docker-build-test-upload.yml + with: + parent-image: pyspark-notebook + image: all-spark-notebook + platform: x86_64 + runs-on: ubuntu-latest + needs: [x86_64-pyspark] + if: ${{ !contains(github.event.pull_request.title, '[FAST_BUILD]') }} + + aarch64-images-tag-push: + uses: ./.github/workflows/docker-tag-push.yml + with: + platform: aarch64 + image: ${{ matrix.image }} + secrets: + REGISTRY_USERNAME: ${{ secrets.QUAY_USERNAME }} + REGISTRY_TOKEN: ${{ secrets.QUAY_ROBOT_TOKEN }} + strategy: + matrix: + image: + [ + docker-stacks-foundation, + base-notebook, + minimal-notebook, + scipy-notebook, + r-notebook, + julia-notebook, + tensorflow-notebook, + pytorch-notebook, + datascience-notebook, + pyspark-notebook, + all-spark-notebook, + ] + needs: + [ + aarch64-foundation, + aarch64-base, + aarch64-minimal, + aarch64-scipy, + aarch64-r, + aarch64-julia, + aarch64-tensorflow, + aarch64-pytorch, + aarch64-datascience, + aarch64-pyspark, + aarch64-all-spark, + ] + if: github.repository_owner == 'jupyter' && !contains(github.event.pull_request.title, '[FAST_BUILD]') + + aarch64-images-tag-push-fast: + uses: ./.github/workflows/docker-tag-push.yml + with: + platform: aarch64 + image: ${{ matrix.image }} + secrets: + REGISTRY_USERNAME: ${{ secrets.QUAY_USERNAME }} + REGISTRY_TOKEN: ${{ secrets.QUAY_ROBOT_TOKEN }} + strategy: + matrix: + image: [docker-stacks-foundation, base-notebook] + needs: [aarch64-foundation, aarch64-base] + if: github.repository_owner == 'jupyter' && contains(github.event.pull_request.title, '[FAST_BUILD]') + + x86_64-images-tag-push: + uses: ./.github/workflows/docker-tag-push.yml + with: + platform: x86_64 + image: ${{ matrix.image }} + secrets: + REGISTRY_USERNAME: ${{ secrets.QUAY_USERNAME }} + REGISTRY_TOKEN: ${{ secrets.QUAY_ROBOT_TOKEN }} + strategy: + matrix: + image: + [ + docker-stacks-foundation, + base-notebook, + minimal-notebook, + scipy-notebook, + r-notebook, + julia-notebook, + tensorflow-notebook, + pytorch-notebook, + datascience-notebook, + pyspark-notebook, + all-spark-notebook, + ] + needs: + [ + x86_64-foundation, + x86_64-base, + x86_64-minimal, + x86_64-scipy, + x86_64-r, + x86_64-julia, + x86_64-tensorflow, + x86_64-pytorch, + x86_64-datascience, + x86_64-pyspark, + x86_64-all-spark, + ] + if: ${{ !contains(github.event.pull_request.title, '[FAST_BUILD]') }} + + x86_64-images-tag-push-fast: + uses: ./.github/workflows/docker-tag-push.yml + with: + platform: x86_64 + image: ${{ matrix.image }} + secrets: + REGISTRY_USERNAME: ${{ secrets.QUAY_USERNAME }} + REGISTRY_TOKEN: ${{ secrets.QUAY_ROBOT_TOKEN }} + strategy: + matrix: + image: [docker-stacks-foundation, base-notebook] + needs: [x86_64-foundation, x86_64-base] + if: contains(github.event.pull_request.title, '[FAST_BUILD]') + + merge-tags: + uses: ./.github/workflows/docker-merge-tags.yml + with: + image: ${{ matrix.image }} + secrets: + REGISTRY_USERNAME: ${{ secrets.QUAY_USERNAME }} + REGISTRY_TOKEN: ${{ secrets.QUAY_ROBOT_TOKEN }} + strategy: + matrix: + image: + [ + docker-stacks-foundation, + base-notebook, + minimal-notebook, + scipy-notebook, + r-notebook, + julia-notebook, + tensorflow-notebook, + pytorch-notebook, + datascience-notebook, + pyspark-notebook, + all-spark-notebook, + ] + needs: [aarch64-images-tag-push, x86_64-images-tag-push] + if: github.repository_owner == 'jupyter' && !contains(github.event.pull_request.title, '[FAST_BUILD]') + + merge-tags-fast: + uses: ./.github/workflows/docker-merge-tags.yml + with: + image: ${{ matrix.image }} + secrets: + REGISTRY_USERNAME: ${{ secrets.QUAY_USERNAME }} + REGISTRY_TOKEN: ${{ secrets.QUAY_ROBOT_TOKEN }} + strategy: + matrix: + image: [docker-stacks-foundation, base-notebook] + needs: [aarch64-images-tag-push-fast, x86_64-images-tag-push-fast] + if: github.repository_owner == 'jupyter' && contains(github.event.pull_request.title, '[FAST_BUILD]') + + wiki-update: + uses: ./.github/workflows/docker-wiki-update.yml + needs: [aarch64-images-tag-push, x86_64-images-tag-push] + if: github.repository_owner == 'jupyter' && !contains(github.event.pull_request.title, '[FAST_BUILD]') + permissions: + contents: write + + wiki-update-fast: + uses: ./.github/workflows/docker-wiki-update.yml + needs: [aarch64-images-tag-push-fast, x86_64-images-tag-push-fast] + if: github.repository_owner == 'jupyter' && contains(github.event.pull_request.title, '[FAST_BUILD]') + permissions: + contents: write + + contributed-recipes: + uses: ./.github/workflows/contributed-recipes.yml + needs: [merge-tags] + if: github.repository_owner == 'jupyter' && (github.ref == 'refs/heads/main' || github.event_name == 'schedule') diff --git a/.github/workflows/pre-commit.yml b/.github/workflows/pre-commit.yml new file mode 100644 index 0000000..5c2e74d --- /dev/null +++ b/.github/workflows/pre-commit.yml @@ -0,0 +1,32 @@ +name: Run pre-commit hooks + +on: + pull_request: + push: + branches: + - main + workflow_dispatch: + +permissions: + contents: read + +jobs: + run-hooks: + runs-on: ubuntu-latest + + steps: + - name: Checkout Repo ⚡️ + uses: actions/checkout@v4 + + - name: Set Up Python 🐍 + uses: actions/setup-python@v5 + with: + python-version: 3.x + + - name: Install pre-commit 📦 + run: | + pip install --upgrade pip + pip install --upgrade pre-commit + + - name: Run pre-commit hooks ✅ + run: pre-commit run --all-files --hook-stage manual diff --git a/.github/workflows/registry-move.yml b/.github/workflows/registry-move.yml new file mode 100644 index 0000000..09ef3d2 --- /dev/null +++ b/.github/workflows/registry-move.yml @@ -0,0 +1,59 @@ +name: Move some images from Docker Hub to Quay.io + +env: + OWNER: ${{ github.repository_owner }} + PUSH_TO_REGISTRY: ${{ (github.repository_owner == 'jupyter' || github.repository_owner == 'mathbunnyru') && (github.ref == 'refs/heads/main') }} + +on: + pull_request: + paths: + - ".github/workflows/registry-move.yml" + push: + branches: + - main + paths: + - ".github/workflows/registry-move.yml" + workflow_dispatch: + +jobs: + update-overview: + # To be able to use the latest skopeo + runs-on: macos-latest + if: github.repository_owner == 'jupyter' || github.repository_owner == 'mathbunnyru' + + steps: + - name: Checkout Repo ⚡️ + uses: actions/checkout@v4 + + - name: Install skopeo and Docker 📦 + run: | + brew install skopeo + brew install --cask docker + + - name: Login to Quay.io 🔐 + if: env.PUSH_TO_REGISTRY == 'true' + run: skopeo login quay.io --username ${{ secrets.QUAY_USERNAME }} --password ${{ secrets.QUAY_ROBOT_TOKEN }} + + - name: Move image from Docker Hub to Quay.io 🐳 + if: env.PUSH_TO_REGISTRY == 'true' + run: | + skopeo copy --multi-arch all docker://${{ env.OWNER }}/${{ matrix.image }}:${{ matrix.tag }} docker://quay.io/${{ env.OWNER }}/${{ matrix.image }}:${{ matrix.tag }} + + strategy: + fail-fast: false + matrix: + image: + [ + docker-stacks-foundation, + base-notebook, + minimal-notebook, + scipy-notebook, + r-notebook, + julia-notebook, + tensorflow-notebook, + pytorch-notebook, + datascience-notebook, + pyspark-notebook, + all-spark-notebook, + ] + tag: [missing-tag-expected-to-fail] diff --git a/.github/workflows/registry-overviews.yml b/.github/workflows/registry-overviews.yml new file mode 100644 index 0000000..91a6b1f --- /dev/null +++ b/.github/workflows/registry-overviews.yml @@ -0,0 +1,49 @@ +name: Update Registry overviews + +env: + OWNER: ${{ github.repository_owner }} + +on: + push: + branches: + - main + paths: + - ".github/workflows/registry-overviews.yml" + + - "images/*/README.md" + workflow_dispatch: + +jobs: + update-overview: + runs-on: ubuntu-latest + if: github.repository_owner == 'jupyter' || github.repository_owner == 'mathbunnyru' + + steps: + - name: Checkout Repo ⚡️ + uses: actions/checkout@v4 + + - name: Push README to Registry 🐳 + uses: christian-korneck/update-container-description-action@d36005551adeaba9698d8d67a296bd16fa91f8e8 # v1 + env: + DOCKER_APIKEY: ${{ secrets.APIKEY__QUAY_IO }} + with: + destination_container_repo: quay.io/${{ env.OWNER }}/${{ matrix.image }} + provider: quay + readme_file: images/${{ matrix.image }}/README.md + + strategy: + matrix: + image: + [ + docker-stacks-foundation, + base-notebook, + minimal-notebook, + scipy-notebook, + r-notebook, + julia-notebook, + tensorflow-notebook, + pytorch-notebook, + datascience-notebook, + pyspark-notebook, + all-spark-notebook, + ] diff --git a/.github/workflows/sphinx.yml b/.github/workflows/sphinx.yml new file mode 100644 index 0000000..9856b3e --- /dev/null +++ b/.github/workflows/sphinx.yml @@ -0,0 +1,50 @@ +name: Build Sphinx Documentation and check links + +on: + schedule: + # Weekly, at 03:00 on Monday UTC + - cron: "0 3 * * 1" + pull_request: + paths: + - ".github/workflows/sphinx.yml" + + - "docs/**" + - "README.md" + push: + branches: + - main + paths: + - ".github/workflows/sphinx.yml" + + - "docs/**" + - "README.md" + workflow_dispatch: + +jobs: + build-docs: + permissions: + contents: write + if: github.repository_owner == 'jupyter' || github.repository_owner == 'mathbunnyru' || github.event_name != 'schedule' + runs-on: ubuntu-latest + + steps: + - name: Checkout Repo ⚡️ + uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Set Up Python 🐍 + uses: actions/setup-python@v5 + with: + python-version: 3.9 + + - name: Install Doc Dependencies 📦 + run: | + pip install --upgrade pip + pip install --upgrade -r docs/requirements.txt + + - name: Build Documentation 📖 + run: make docs + + - name: Check Documentation URLs 🔗 + run: make linkcheck-docs || make linkcheck-docs diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..14241e2 --- /dev/null +++ b/.gitignore @@ -0,0 +1,175 @@ +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ +cover/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 +db.sqlite3-journal + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +.pybuilder/ +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +# For a library or package, you might want to ignore these files since the code is +# intended to run in multiple environments; otherwise, check them in: +# .python-version + +# pipenv +# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. +# However, in case of collaboration, if having platform-specific dependencies or dependencies +# having no cross-platform support, pipenv may install dependencies that don't work, or not +# install all needed dependencies. +#Pipfile.lock + +# poetry +# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. +# This is especially recommended for binary packages to ensure reproducibility, and is more +# commonly ignored for libraries. +# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control +#poetry.lock + +# pdm +# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control. +#pdm.lock +# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it +# in version control. +# https://pdm.fming.dev/#use-with-ide +.pdm.toml + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# pytype static type analyzer +.pytype/ + +# Cython debug symbols +cython_debug/ + +# PyCharm +# JetBrains specific template is maintained in a separate JetBrains.gitignore that can +# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore +# and can be added to the global gitignore or merged into this file. For a more nuclear +# option (not recommended) you can uncomment the following to ignore the entire idea folder. +#.idea/ + +################################################################## +# The content above is copied from # +# https://github.com/github/gitignore/blob/main/Python.gitignore # +# Please, add the content only below these lines # +################################################################## + +# Mac OS X +.DS_Store + +# VS Code project configuration +.vscode/ + +# PyCharm project configuration +.idea/ diff --git a/.hadolint.yaml b/.hadolint.yaml new file mode 100644 index 0000000..11ee226 --- /dev/null +++ b/.hadolint.yaml @@ -0,0 +1,5 @@ +--- +ignored: + - DL3006 + - DL3008 + - DL3013 diff --git a/.markdownlint.yaml b/.markdownlint.yaml new file mode 100644 index 0000000..ce8b17f --- /dev/null +++ b/.markdownlint.yaml @@ -0,0 +1,8 @@ +# Default state for all rules +default: true + +# MD013/line-length - Line length +MD013: + # Number of characters + line_length: 200 + tables: false diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000..8378636 --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,165 @@ +--- +# pre-commit is a tool to perform a predefined set of tasks manually and/or +# automatically before git commits are made. +# +# Config reference: https://pre-commit.com/#pre-commit-configyaml---top-level +# +# Common tasks +# +# - Run on all files: pre-commit run --all-files +# - Register git hooks: pre-commit install --install-hooks +# +# See https://pre-commit.com for more information +# See https://pre-commit.com/hooks.html for more hooks +repos: + # Autoupdate: Python code + - repo: https://github.com/asottile/pyupgrade + rev: v3.15.0 + hooks: + - id: pyupgrade + args: [--py39-plus] + + # Automatically sort python imports + - repo: https://github.com/PyCQA/isort + rev: 5.13.2 + hooks: + - id: isort + args: [--profile, black] + + # Autoformat: Python code + - repo: https://github.com/psf/black + rev: 24.1.1 + hooks: + - id: black + args: [--target-version=py39] + + # Check python code static typing + - repo: https://github.com/pre-commit/mirrors-mypy + rev: v1.8.0 + hooks: + - id: mypy + args: [--config, ./mypy.ini] + additional_dependencies: + [ + "beautifulsoup4", + "numpy", + "pytest", + "requests", + "urllib3", + "types-beautifulsoup4", + "types-requests", + "types-tabulate", + "types-urllib3", + ] + # Unfortunately, `pre-commit` only runs on changed files + # This doesn't work well with `mypy --follow-imports error` + # See: https://github.com/pre-commit/mirrors-mypy/issues/34#issuecomment-1062160321 + # + # To work around this we run `mypy` only in manual mode + # So it won't run as part of `git commit` command + # But it will still be run as part of `pre-commit` workflow and give expected results + stages: [manual] + + # Autoformat: YAML, JSON, Markdown, etc. + - repo: https://github.com/pre-commit/mirrors-prettier + rev: v4.0.0-alpha.8 + hooks: + - id: prettier + + # `pre-commit sample-config` default hooks + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v4.5.0 + hooks: + - id: check-added-large-files + - id: end-of-file-fixer + - id: requirements-txt-fixer + - id: trailing-whitespace + + # Lint: Dockerfile + - repo: https://github.com/hadolint/hadolint + rev: v2.12.1-beta + hooks: + - id: hadolint-docker + entry: hadolint/hadolint:v2.12.1-beta hadolint + + # Lint: Dockerfile + # We're linting .dockerfile files as well + - repo: https://github.com/hadolint/hadolint + rev: v2.12.1-beta + hooks: + - id: hadolint-docker + name: Lint *.dockerfile Dockerfiles + entry: hadolint/hadolint:v2.12.1-beta hadolint + types: [file] + files: \.dockerfile$ + + # Lint: YAML + - repo: https://github.com/adrienverge/yamllint + rev: v1.33.0 + hooks: + - id: yamllint + args: ["-d {extends: relaxed, rules: {line-length: disable}}", "-s"] + files: \.(yaml|yml)$ + + # Lint: Bash scripts + - repo: https://github.com/openstack/bashate + rev: 2.1.1 + hooks: + - id: bashate + args: ["--ignore=E006"] + + # Lint: Shell scripts + - repo: https://github.com/shellcheck-py/shellcheck-py + rev: v0.9.0.6 + hooks: + - id: shellcheck + args: ["-x"] + + # Lint: Python + - repo: https://github.com/PyCQA/flake8 + rev: 7.0.0 + hooks: + - id: flake8 + + # Lint: Markdown + - repo: https://github.com/igorshubovych/markdownlint-cli + rev: v0.39.0 + hooks: + - id: markdownlint + args: ["--fix"] + + # Strip output from Jupyter notebooks + - repo: https://github.com/kynan/nbstripout + rev: 0.6.1 + hooks: + - id: nbstripout + + # nbQA provides tools from the Python ecosystem like + # pyupgrade, isort, black, and flake8, adjusted for notebooks. + - repo: https://github.com/nbQA-dev/nbQA + rev: 1.7.1 + hooks: + - id: nbqa-pyupgrade + args: [--py39-plus] + - id: nbqa-isort + - id: nbqa-black + args: [--target-version=py39] + - id: nbqa-flake8 + + # Run black on python code blocks in documentation files. + - repo: https://github.com/adamchainz/blacken-docs + rev: 1.16.0 + hooks: + - id: blacken-docs + # --skip-errors is added to allow us to have python syntax highlighting even if + # the python code blocks include jupyter-specific additions such as % or ! + # See https://github.com/adamchainz/blacken-docs/issues/127 for an upstream + # feature request about this. + args: [--target-version=py39, --skip-errors] + +# pre-commit.ci config reference: https://pre-commit.ci/#configuration +ci: + autoupdate_schedule: monthly + # Docker hooks do not work in pre-commit.ci + # See: + skip: [hadolint-docker] diff --git a/.readthedocs.yaml b/.readthedocs.yaml new file mode 100644 index 0000000..31dbf0d --- /dev/null +++ b/.readthedocs.yaml @@ -0,0 +1,35 @@ +# Read the Docs configuration file for Sphinx projects +# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details + +# Required +version: 2 + +# Set the OS, Python version and other tools you might need +build: + os: ubuntu-22.04 + tools: + python: "3.12" + # You can also specify other tool versions: + # nodejs: "20" + # rust: "1.70" + # golang: "1.20" + +# Build documentation in the "docs/" directory with Sphinx +sphinx: + configuration: docs/conf.py + # You can configure Sphinx to use a different builder, for instance use the dirhtml builder for simpler URLs + # builder: "dirhtml" + # Fail on all warnings to avoid broken references + # fail_on_warning: true + +# Optionally build your docs in additional formats such as PDF and ePub +# formats: +# - pdf +# - epub + +# Optional but recommended, declare the Python requirements required +# to build your documentation +# See https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html +python: + install: + - requirements: docs/requirements.txt diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..90401f9 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,3 @@ +# Project `jupyter/docker-stacks` Code of Conduct + +Please see the [Project Jupyter Code of Conduct](https://github.com/jupyter/governance/blob/HEAD/conduct/code_of_conduct.md). diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..c14c698 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,10 @@ +Thanks for contributing! +Please see the **Contributor Guide** section in [the documentation](https://jupyter-docker-stacks.readthedocs.io/en/latest/) +for information about how to contribute +[issues](https://jupyter-docker-stacks.readthedocs.io/en/latest/contributing/issues.html), +[features](https://jupyter-docker-stacks.readthedocs.io/en/latest/contributing/features.html), +[recipes](https://jupyter-docker-stacks.readthedocs.io/en/latest/contributing/recipes.html), +[tests](https://jupyter-docker-stacks.readthedocs.io/en/latest/contributing/tests.html), +and [community-maintained stacks](https://jupyter-docker-stacks.readthedocs.io/en/latest/contributing/stacks.html). + + diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..247e5e3 --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,60 @@ +# Licensing terms + +This project is licensed under the terms of the Modified BSD License +(also known as New or Revised or 3-Clause BSD), as follows: + +- Copyright (c) 2001-2015, IPython Development Team +- Copyright (c) 2015-, Jupyter Development Team + +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +Redistributions in binary form must reproduce the above copyright notice, this +list of conditions and the following disclaimer in the documentation and/or +other materials provided with the distribution. + +Neither the name of the Jupyter Development Team nor the names of its +contributors may be used to endorse or promote products derived from this +software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +## About the Jupyter Development Team + +The Jupyter Development Team is the set of all contributors to the Jupyter project. +This includes all of the Jupyter subprojects. + +The core team that coordinates development on GitHub can be found here: +. + +## Our Copyright Policy + +Jupyter uses a shared copyright model. Each contributor maintains copyright +over their contributions to Jupyter. But, it is important to note that these +contributions are typically only changes to the repositories. Thus, the Jupyter +source code, in its entirety is not the copyright of any single person or +institution. Instead, it is the collective copyright of the entire Jupyter +Development Team. If individual contributors want to maintain a record of what +changes/contributions they have specific copyright on, they should indicate +their copyright in the commit message of the change, when they commit the +change to one of the Jupyter repositories. + +With this in mind, the following banner should be used in any source code file +to indicate the copyright and license terms: + + # Copyright (c) Jupyter Development Team. + # Distributed under the terms of the Modified BSD License. diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..7965b64 --- /dev/null +++ b/Makefile @@ -0,0 +1,111 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +.PHONY: docs help test + +SHELL:=bash +REGISTRY?=quay.io +OWNER?=jupyter + +# Enable BuildKit for Docker build +export DOCKER_BUILDKIT:=1 + +# All the images listed in the build dependency order +ALL_IMAGES:= \ + docker-stacks-foundation \ + base-notebook \ + minimal-notebook \ + r-notebook \ + julia-notebook \ + scipy-notebook \ + tensorflow-notebook \ + pytorch-notebook \ + datascience-notebook \ + pyspark-notebook \ + all-spark-notebook + + + +# https://marmelab.com/blog/2016/02/29/auto-documented-makefile.html +help: + @echo "jupyter/docker-stacks" + @echo "=====================" + @echo "Replace % with a stack directory name (e.g., make build/minimal-notebook)" + @echo + @grep -E '^[a-zA-Z0-9_%/-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}' + + + +build/%: DOCKER_BUILD_ARGS?= +build/%: ## build the latest image for a stack using the system's architecture + docker build $(DOCKER_BUILD_ARGS) --rm --force-rm --tag "$(REGISTRY)/$(OWNER)/$(notdir $@):latest" "./images/$(notdir $@)" --build-arg REGISTRY="$(REGISTRY)" --build-arg OWNER="$(OWNER)" + @echo -n "Built image size: " + @docker images "$(REGISTRY)/$(OWNER)/$(notdir $@):latest" --format "{{.Size}}" +build-all: $(foreach I, $(ALL_IMAGES), build/$(I)) ## build all stacks + + + +check-outdated/%: ## check the outdated mamba/conda packages in a stack and produce a report + @TEST_IMAGE="$(REGISTRY)/$(OWNER)/$(notdir $@)" pytest tests/docker-stacks-foundation/test_outdated.py +check-outdated-all: $(foreach I, $(ALL_IMAGES), check-outdated/$(I)) ## check all the stacks for outdated packages + + + +cont-stop-all: ## stop all containers + @echo "Stopping all containers ..." + -docker stop --time 0 $(shell docker ps --all --quiet) 2> /dev/null +cont-rm-all: ## remove all containers + @echo "Removing all containers ..." + -docker rm --force $(shell docker ps --all --quiet) 2> /dev/null +cont-clean-all: cont-stop-all cont-rm-all ## clean all containers (stop + rm) + + + +docs: ## build HTML documentation + sphinx-build -W --keep-going --color docs/ docs/_build/ +linkcheck-docs: ## check broken links + sphinx-build -W --keep-going --color -b linkcheck docs/ docs/_build/ + + + +hook/%: ## run post-build hooks for an image + python3 -m tagging.write_tags_file --short-image-name "$(notdir $@)" --tags-dir /tmp/jupyter/tags/ --registry "$(REGISTRY)" --owner "$(OWNER)" && \ + python3 -m tagging.write_manifest --short-image-name "$(notdir $@)" --hist-lines-dir /tmp/jupyter/hist_lines/ --manifests-dir /tmp/jupyter/manifests/ --registry "$(REGISTRY)" --owner "$(OWNER)" && \ + python3 -m tagging.apply_tags --short-image-name "$(notdir $@)" --tags-dir /tmp/jupyter/tags/ --platform "$(shell uname -m)" --registry "$(REGISTRY)" --owner "$(OWNER)" +hook-all: $(foreach I, $(ALL_IMAGES), hook/$(I)) ## run post-build hooks for all images + + + +img-list: ## list jupyter images + @echo "Listing $(OWNER) images ..." + docker images "$(OWNER)/*" + docker images "*/$(OWNER)/*" +img-rm-dang: ## remove dangling images (tagged None) + @echo "Removing dangling images ..." + -docker rmi --force $(shell docker images -f "dangling=true" --quiet) 2> /dev/null +img-rm-jupyter: ## remove jupyter images + @echo "Removing $(OWNER) images ..." + -docker rmi --force $(shell docker images --quiet "$(OWNER)/*") 2> /dev/null + -docker rmi --force $(shell docker images --quiet "*/$(OWNER)/*") 2> /dev/null +img-rm: img-rm-dang img-rm-jupyter ## remove dangling and jupyter images + + + +pull/%: ## pull a jupyter image + docker pull "$(REGISTRY)/$(OWNER)/$(notdir $@)" +pull-all: $(foreach I, $(ALL_IMAGES), pull/$(I)) ## pull all images +push/%: ## push all tags for a jupyter image + docker push --all-tags "$(REGISTRY)/$(OWNER)/$(notdir $@)" +push-all: $(foreach I, $(ALL_IMAGES), push/$(I)) ## push all tagged images + + + +run-shell/%: ## run a bash in interactive mode in a stack + docker run -it --rm "$(REGISTRY)/$(OWNER)/$(notdir $@)" $(SHELL) +run-sudo-shell/%: ## run bash in interactive mode as root in a stack + docker run -it --rm --user root "$(REGISTRY)/$(OWNER)/$(notdir $@)" $(SHELL) + + + +test/%: ## run tests against a stack + python3 -m tests.run_tests --short-image-name "$(notdir $@)" --registry "$(REGISTRY)" --owner "$(OWNER)" +test-all: $(foreach I, $(ALL_IMAGES), test/$(I)) ## test all stacks diff --git a/README.md b/README.md new file mode 100644 index 0000000..018bdff --- /dev/null +++ b/README.md @@ -0,0 +1,137 @@ +# Jupyter Docker Stacks + +[![GitHub actions badge](https://github.com/jupyter/docker-stacks/actions/workflows/docker.yml/badge.svg) +](https://github.com/jupyter/docker-stacks/actions/workflows/docker.yml?query=branch%3Amain "Docker images build status") +[![Read the Docs badge](https://img.shields.io/readthedocs/jupyter-docker-stacks.svg)](https://jupyter-docker-stacks.readthedocs.io/en/latest/ "Documentation build status") +[![pre-commit.ci status](https://results.pre-commit.ci/badge/github/jupyter/docker-stacks/main.svg)](https://results.pre-commit.ci/latest/github/jupyter/docker-stacks/main "pre-commit.ci build status") +[![Discourse badge](https://img.shields.io/discourse/users.svg?color=%23f37626&server=https%3A%2F%2Fdiscourse.jupyter.org)](https://discourse.jupyter.org/ "Jupyter Discourse Forum") +[![Binder badge](https://static.mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/jupyter/docker-stacks/main?urlpath=lab/tree/README.ipynb "Launch a quay.io/jupyter/base-notebook container on mybinder.org") + +Jupyter Docker Stacks are a set of ready-to-run [Docker images](https://quay.io/organization/jupyter) containing Jupyter applications and interactive computing tools. +You can use a stack image to do any of the following (and more): + +- Start a personal Jupyter Server with the JupyterLab frontend (default) +- Run JupyterLab for a team using JupyterHub +- Start a personal Jupyter Server with the Jupyter Notebook frontend in a local Docker container +- Write your own project Dockerfile + +## Quick Start + +You can [try a relatively recent build of the quay.io/jupyter/base-notebook image on mybinder.org](https://mybinder.org/v2/gh/jupyter/docker-stacks/main?urlpath=lab/tree/README.ipynb). +Otherwise, the examples below may help you get started if you [have Docker installed](https://docs.docker.com/get-docker/), +know [which Docker image](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html) you want to use, and want to launch a single Jupyter Application in a container. + +The [User Guide on ReadTheDocs](https://jupyter-docker-stacks.readthedocs.io/en/latest/) describes additional uses and features in detail. + +```{note} +Since `2023-10-20` our images are only pushed to `Quay.io` registry. +Older images are available on Docker Hub, but they will no longer be updated. +``` + +### Example 1 + +This command pulls the `jupyter/scipy-notebook` image tagged `2024-01-15` from Quay.io if it is not already present on the local host. +It then starts a container running a Jupyter Server with the JupyterLab frontend and exposes the container's internal port `8888` to port `10000` of the host machine: + +```bash +docker run -p 10000:8888 quay.io/jupyter/scipy-notebook:2024-01-15 +``` + +You can modify the port on which the container's port is exposed by [changing the value of the `-p` option](https://docs.docker.com/engine/reference/run/#exposed-ports) to `-p 8888:8888`. + +Visiting `http://:10000/?token=` in a browser loads JupyterLab, +where: + +- The `hostname` is the name of the computer running Docker +- The `token` is the secret token printed in the console. + +The container remains intact for restart after the Server exits. + +### Example 2 + +This command pulls the `jupyter/datascience-notebook` image tagged `2024-01-15` from Quay.io if it is not already present on the local host. +It then starts an _ephemeral_ container running a Jupyter Server with the JupyterLab frontend and exposes the server on host port 10000. + +```bash +docker run -it --rm -p 10000:8888 -v "${PWD}":/home/jovyan/work quay.io/jupyter/datascience-notebook:2024-01-15 +``` + +The use of the `-v` flag in the command mounts the current working directory on the host (`${PWD}` in the example command) as `/home/jovyan/work` in the container. +The server logs appear in the terminal. + +Visiting `http://:10000/?token=` in a browser loads JupyterLab. + +Due to the usage of [the `--rm` flag](https://docs.docker.com/engine/reference/commandline/container_run/#rm) +Docker automatically cleans up the container and removes the file system when the container exits, +but any changes made to the `~/work` directory and its files in the container will remain intact on the host. +[The `-i` flag](https://docs.docker.com/engine/reference/commandline/container_run/#interactive) keeps the container's `STDIN` open, and lets you send input to the container through standard input. +[The `-t` flag](https://docs.docker.com/engine/reference/commandline/container_run/#tty) attaches a pseudo-TTY to the container. + +```{note} +By default, [jupyter's root_dir](https://jupyter-server.readthedocs.io/en/latest/other/full-config.html) is `/home/jovyan`. +So, new notebooks will be saved there, unless you change the directory in the file browser. + +To change the default directory, you must specify `ServerApp.root_dir` by adding this line to the previous command: `start-notebook.py --ServerApp.root_dir=/home/jovyan/work`. +``` + +## Choosing Jupyter frontend + +JupyterLab is the default for all the Jupyter Docker Stacks images. +It is still possible to switch back to Jupyter Notebook (or to launch a different startup command). +You can achieve this by passing the environment variable `DOCKER_STACKS_JUPYTER_CMD=notebook` (or any other valid `jupyter` subcommand) at container startup; +more information is available in the [documentation](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/common.html#alternative-commands). + +## Resources + +- [Documentation on ReadTheDocs](https://jupyter-docker-stacks.readthedocs.io/en/latest/) +- [Issue Tracker on GitHub](https://github.com/jupyter/docker-stacks/issues) +- [Jupyter Discourse Forum](https://discourse.jupyter.org/) +- [Jupyter Website](https://jupyter.org) +- [Images on Quay.io](https://quay.io/organization/jupyter) + +## Acknowledgments + +- Starting from `2022-07-05`, `aarch64` self-hosted runners were sponsored by [`@mathbunnyru`](https://github.com/mathbunnyru/). + Please, consider [sponsoring his work](https://github.com/sponsors/mathbunnyru) on GitHub +- Starting from `2023-10-31`, `aarch64` self-hosted runners are sponsored by an amazing [`2i2c non-profit organization`](https://2i2c.org) + +## CPU Architectures + +- We publish containers for both `x86_64` and `aarch64` platforms +- Single-platform images have either `aarch64-` or `x86_64-` tag prefixes, for example, `quay.io/jupyter/base-notebook:aarch64-python-3.11.6` +- Starting from `2022-09-21`, we create multi-platform images (except `tensorflow-notebook`) +- Starting from `2023-06-01`, we create a multi-platform `tensorflow-notebook` image as well + +## Using old images + +This project only builds one set of images at a time. +If you want to use the older `Ubuntu` and/or `Python` version, you can use the following images: + +| Build Date | Ubuntu | Python | Tag | +| ------------ | ------ | ------ | -------------- | +| 2022-10-09 | 20.04 | 3.7 | `1aac87eb7fa5` | +| 2022-10-09 | 20.04 | 3.8 | `a374cab4fcb6` | +| 2022-10-09 | 20.04 | 3.9 | `5ae537728c69` | +| 2022-10-09 | 20.04 | 3.10 | `f3079808ca8c` | +| 2022-10-09 | 22.04 | 3.7 | `b86753318aa1` | +| 2022-10-09 | 22.04 | 3.8 | `7285848c0a11` | +| 2022-10-09 | 22.04 | 3.9 | `ed2908bbb62e` | +| 2023-05-30 | 22.04 | 3.10 | `4d70cf8da953` | +| weekly build | 22.04 | 3.11 | `latest` | + +## Contributing + +Please see the [Contributor Guide on ReadTheDocs](https://jupyter-docker-stacks.readthedocs.io/en/latest/) +for information about how to contribute recipes, features, tests, and community-maintained stacks. + +## Alternatives + +- [rocker/binder](https://rocker-project.org/images/versioned/binder.html) - + From the R focused [rocker-project](https://rocker-project.org), + lets you run both RStudio and Jupyter either standalone or in a JupyterHub +- [jupyter/repo2docker](https://github.com/jupyterhub/repo2docker) - + Turn git repositories into Jupyter-enabled Docker Images +- [openshift/source-to-image](https://github.com/openshift/source-to-image) - + A tool for building artifacts from source code and injecting them into docker images +- [jupyter-on-openshift/jupyter-notebooks](https://github.com/jupyter-on-openshift/jupyter-notebooks) - + OpenShift compatible S2I builder for basic notebook images diff --git a/aarch64-runner/setup.sh b/aarch64-runner/setup.sh new file mode 100755 index 0000000..fb6e05b --- /dev/null +++ b/aarch64-runner/setup.sh @@ -0,0 +1,39 @@ +#!/bin/bash +set -ex + +GITHUB_RUNNER_USER="runner-user" + +if [ "${EUID}" -ne 0 ]; then + echo "Please run as root" + exit 1 +fi + +apt-get update --yes +apt-get upgrade --yes + +echo "Setting up runner-user, who will run GitHub Actions runner" +adduser --disabled-password --gecos "" ${GITHUB_RUNNER_USER} +mkdir /home/${GITHUB_RUNNER_USER}/.ssh/ +set +e +cp "/home/${SUDO_USER}/.ssh/authorized_keys" "/home/${GITHUB_RUNNER_USER}/.ssh/authorized_keys" +set -e +chown --recursive ${GITHUB_RUNNER_USER}:${GITHUB_RUNNER_USER} /home/${GITHUB_RUNNER_USER}/.ssh + +echo "Setting up python3" +apt-get install --yes --no-install-recommends python3 +curl -sS https://bootstrap.pypa.io/get-pip.py | python3 + +echo "Setting up docker" +apt-get remove --yes docker.io docker-doc docker-compose podman-docker containerd runc +apt-get update --yes +apt-get install --yes ca-certificates curl gnupg +install -m 0755 -d /etc/apt/keyrings +curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg +chmod a+r /etc/apt/keyrings/docker.gpg +echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | \ + tee /etc/apt/sources.list.d/docker.list > /dev/null +apt-get update --yes +apt-get install --yes docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin + +usermod -aG docker ${GITHUB_RUNNER_USER} +chmod 666 /var/run/docker.sock diff --git a/binder/Dockerfile b/binder/Dockerfile new file mode 100644 index 0000000..cad1fd4 --- /dev/null +++ b/binder/Dockerfile @@ -0,0 +1,18 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +# https://quay.io/repository/jupyter/base-notebook?tab=tags +ARG REGISTRY=quay.io +ARG OWNER=jupyter +ARG BASE_CONTAINER=$REGISTRY/$OWNER/base-notebook:2024-01-15 +FROM $BASE_CONTAINER + +LABEL maintainer="Jupyter Project " + +# Fix: https://github.com/hadolint/hadolint/wiki/DL4006 +# Fix: https://github.com/koalaman/shellcheck/wiki/SC3014 +SHELL ["/bin/bash", "-o", "pipefail", "-c"] + +ENV TAG="2024-01-15" + +COPY --chown=${NB_UID}:${NB_GID} binder/README.ipynb "${HOME}"/README.ipynb diff --git a/binder/README.ipynb b/binder/README.ipynb new file mode 100644 index 0000000..66630c9 --- /dev/null +++ b/binder/README.ipynb @@ -0,0 +1,136 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# jupyter/base-notebook on Binder\n", + "\n", + "Run the cells below to inspect what's in the [jupyter/base-notebook](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html#jupyter-base-notebook) image from the Jupyter Docker Stacks project.\n", + "\n", + "You can launch the classic notebook interface in Binder by replacing `lab/tree/*` with `tree/` in the JupyterLab URL." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "\n", + "print(\n", + " f'This container is using tag {os.environ[\"TAG\"]} of the jupyter/base-notebook image'\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The Server is running as the following user." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "!id" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Here's the contents of that user's home directory, the default notebook directory for the server." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "!ls -al" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`mamba` is available in the user's path." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "!which mamba" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The user has read/write access to the root mamba environment." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "!ls -l /opt/conda" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The following packages are mamba-installed in the base image to support [Jupyter Notebook](https://github.com/jupyter/notebook), [JupyterLab](https://github.com/jupyterlab/jupyterlab), and their use in [JupyterHub](https://github.com/jupyterhub/jupyterhub) environments (e.g., [MyBinder](https://mybinder.org/))." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "!mamba list" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Other images in the [jupyter/docker-stacks project](https://github.com/jupyter/docker-stacks) include additional libraries. See the [Jupyter Docker Stacks documentation](https://jupyter-docker-stacks.readthedocs.io/en/latest/) for full details." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.4" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/docs/_static/contributing/stacks/docker-org-create-token.png b/docs/_static/contributing/stacks/docker-org-create-token.png new file mode 100644 index 0000000000000000000000000000000000000000..21105bc2976c6a41f19e37930ce4298ab8304588 GIT binary patch literal 445477 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 z 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

egh< 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

-tg6Tup;s>AV-P}xHszrpK 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%0AUCJD2(mvbPA4i;nXDR){Fm~48iQD;M5Eo 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%0ARjk8?HYrk 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

d*4YA79Okl3nXz*VnaOu3$kz&d^gYU&U? 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 literal 0 HcmV?d00001 diff --git a/docs/_static/contributing/stacks/github-actions-workflow.png b/docs/_static/contributing/stacks/github-actions-workflow.png new file mode 100644 index 0000000000000000000000000000000000000000..2dc4a9cf898beb054fdc3999d07af8bee64abf49 GIT binary patch literal 874816 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­7t4qwxeWh~ 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

*XIOOV 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ÅZdbFCjw1sa@hr)>x!^hd_{ayW!`~NSJM= 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

6owjQ>&rmiSx!uXB@^%ul)Hj=9%HrA2S)c{`Z_1 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

    7(1tBx%frcnaOGL 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 Rf?i{|IZ(;7D>)B+{QJ^Hx5?5y%=Be?cG-z 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

    rOhWIT>x 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

    @R0(9w`i`i0;OyAFMuk_ADflN6|^}!lUS~IXU-W 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�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 z zBKv|fb-0|}CwPQePB_5*{G-|dzUD$y=Q#j-x_x_D5plqo7?`5g5h9%gWZ_NNw%-qu zT+QuuiL!JuUk_+KI^-<_!%=W(C*mWo+WWu)_gA#)8g9cQcEKAYqloMO{QXZq{6853 zdub24h~3)R-76$M$`ZINe(8K>L9+EN+_OFDfQul3HkI*wy~}~+4oQg*FNkRy6fCxG zXJakw*Z0t|Zr7jrh zE~Nb|iLWTI(fsMaaKz{{n=umo?4=GB;b>QH}^CTme|=B98--2-9HG? zPaer7fAn&>e%-mYuY^uqn?Cx5&tI*to3>ACj%nmq;sqY(b; zvuN{SljYqciA1Kv4qR1vO&H zXKTsD1a-I>D3W#;K9;2&YJQz}RZz#@ZdIhrj0t}u-EdYu?t`LtJm-|DEEf$^iV3{1 zlF)2$l%}R4okqku#k!QLTwojExFa5T{xMolk8F|_lkm+OA>hCB;_4-#LHuP#&{Ehq z2&ZnhBd{baB|s3#utr*rK!lRU<7Flw=ZO9 zO56?_R&>Qa`^>vll&nWuUb4Lhj4@-Vo;53FZ?l)eWh+cGQT-4o2P_SZeacu$*>U0i z_F32-s0Dh8%{?I@4sqpUrjk9yE}jvsb)WFf!~AfE7;bLo!E0jt7y3}x&9jetIie!^ z{N!^Gez_yU1BpEd+VV+MSvDFyX8vHQjGHom=aiW488*VFNlHliHOngmfqrBq37urh%Q+tgnk4H& z))v{6#P?rF91uHTqT7t1RT7F|V|*{o(+t{oHc7Hl8sXn?9L4aa0{hf6DgY2}0jGH~ s$D+Kw +Group.svg +Created using Figma 0.90 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/_static/using/troubleshooting/vscode-jupyter-settings.png b/docs/_static/using/troubleshooting/vscode-jupyter-settings.png new file mode 100644 index 0000000000000000000000000000000000000000..6c60389ae5c2748a7644cdba9a084cdc2f5e3b3e GIT binary patch literal 35727 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 + ``` + +3. [Submit a pull request](https://github.com/PointCloudLibrary/pcl/wiki/A-step-by-step-guide-on-preparing-and-submitting-a-pull-request)(PR) with your changes. +4. Watch for GitHub to report a build success or failure for your PR on GitHub. +5. Discuss changes with the maintainers and address any build issues. diff --git a/docs/contributing/issues.md b/docs/contributing/issues.md new file mode 100644 index 0000000..680d584 --- /dev/null +++ b/docs/contributing/issues.md @@ -0,0 +1,19 @@ +# Project Issues + +We appreciate your taking the time to report an issue you encountered using the Jupyter Docker Stacks. +Please review the following guidelines when reporting your problem. + +- If you believe you've found a security vulnerability in any of the Jupyter projects included in Jupyter Docker Stacks images, + please report it to [security@ipython.org](mailto:security@ipython.org), **not in the issue trackers on GitHub**. + If you prefer to encrypt your security reports, you can use [this PGP public key](https://github.com/jupyter/jupyter.github.io/blob/HEAD/assets/ipython_security.asc). +- If you think your problem is unique to the Jupyter Docker Stacks images, + please search the [jupyter/docker-stacks issue tracker](https://github.com/jupyter/docker-stacks/issues) + to see if someone else has already reported the same problem. + If not, please open a [GitHub bug report issue](https://github.com/jupyter/docker-stacks/issues/new?assignees=&labels=type%3ABug&projects=&template=bug_report.yml) + and provide all the information requested in the issue template. + Additionally, check the [Troubleshooting Common Problems](../using/troubleshooting.md) page in the documentation before submitting an issue. +- If the issue you're seeing is with one of the open-source libraries included in the Docker images and is reproducible outside the images, + please file a bug with the appropriate open-source project. +- If you have a general question about how to use the Jupyter Docker Stacks in your environment, + in conjunction with other tools, customizations, and so on, + please post your question on the [Jupyter Discourse site](https://discourse.jupyter.org). diff --git a/docs/contributing/lint.md b/docs/contributing/lint.md new file mode 100644 index 0000000..fe83808 --- /dev/null +++ b/docs/contributing/lint.md @@ -0,0 +1,76 @@ +# Lint + +To enforce some rules, **linters** are used in this project. +Linters can be run either during the **development phase** (by the developer) or the **integration phase** (by GitHub Actions). +To integrate and enforce this process in the project lifecycle, we are using **git hooks** through [pre-commit](https://pre-commit.com/). + +## Using pre-commit hooks + +### Pre-commit hook installation + +_pre-commit_ is a Python package that needs to be installed. +To achieve this, use the generic task to install all Python development dependencies. + +```sh +# Install all development dependencies for the project +pip install --upgrade -r requirements-dev.txt +# It can also be installed directly +pip install pre-commit +``` + +Then the git hooks scripts configured for the project in `.pre-commit-config.yaml` need to be installed in the local git repository. + +```sh +pre-commit install +``` + +### Run + +Now, _pre-commit_ (and so configured hooks) will run automatically on `git commit` on each changed file. +However, it is also possible to trigger it against all files. + +```{note} +Hadolint pre-commit uses Docker to run, so `docker` should be running while running this command. +``` + +```sh +pre-commit run --all-files --hook-stage manual +``` + +```{note} +We're running `pre-commit` with `--hook-stage manual`, because works with changed files, which doesn't work well for mypy. +More information can be found in [`.pre-commit-config.yaml` file](https://github.com/jupyter/docker-stacks/blob/main/.pre-commit-config.yaml) +``` + +## Image Lint + +To comply with [Docker best practices](https://docs.docker.com/develop/develop-images/dockerfile_best-practices), +we are using the [Hadolint](https://github.com/hadolint/hadolint) tool to analyze each `Dockerfile`. + +### Ignoring Rules + +Sometimes it is necessary to ignore [some rules](https://github.com/hadolint/hadolint#rules). +The following rules are ignored by default for all images in the `.hadolint.yaml` file. + +- [`DL3006`][dl3006]: We use a specific policy to manage image tags. + - The `docker-stacks-foundation` `FROM` clause is fixed but based on an argument (`ARG`). + - Building downstream images from (`FROM`) the latest is done on purpose. +- [`DL3008`][dl3008]: System packages are always updated (`apt-get`) to the latest version. +- [`DL3013`][dl3013]: We always install the latest packages using `pip` + +The preferred way to do it for other rules is to flag ignored ones in the `Dockerfile`. + +> It is also possible to ignore rules by using a special comment directly above the Dockerfile instruction you want to make an exception for. +> Ignore rule comments look like `# hadolint ignore=DL3001,SC1081`. +> For example: + +```dockerfile +FROM ubuntu + +# hadolint ignore=DL3003,SC1035 +RUN cd /tmp && echo "hello!" +``` + +[dl3006]: https://github.com/hadolint/hadolint/wiki/DL3006 +[dl3008]: https://github.com/hadolint/hadolint/wiki/DL3008 +[dl3013]: https://github.com/hadolint/hadolint/wiki/DL3013 diff --git a/docs/contributing/packages.md b/docs/contributing/packages.md new file mode 100644 index 0000000..d6b7706 --- /dev/null +++ b/docs/contributing/packages.md @@ -0,0 +1,28 @@ +# Package Updates + +Generally, we do not pin package versions in our `Dockerfile`s. +Dependency resolution is a difficult thing to do. +All this means that packages might have old versions. +Images are rebuilt weekly, so usually, packages receive updates quite frequently. + +```{note} +We pin major.minor version of Python, so this will stay the same even after invoking the `mamba update` command. +``` + +## Outdated packages + +To help identify packages that can be updated, you can use the following helper tool. +It will list all the outdated packages installed in the `Dockerfile` -- +dependencies are filtered to focus only on requested packages. + +```bash +make check-outdated/base-notebook + +# INFO test_outdated:test_outdated.py:80 3/8 (38%) packages could be updated +# INFO test_outdated:test_outdated.py:82 +# Package Current Newest +# ---------- --------- -------- +# conda 4.7.12 4.8.2 +# jupyterlab 1.2.5 2.0.0 +# python 3.7.4 3.8.2 +``` diff --git a/docs/contributing/recipes.md b/docs/contributing/recipes.md new file mode 100644 index 0000000..45afb60 --- /dev/null +++ b/docs/contributing/recipes.md @@ -0,0 +1,12 @@ +# New Recipes + +We welcome contributions of [recipes](../using/recipes.md), and short examples of using, configuring, or extending the Docker Stacks for inclusion in the documentation site. +Follow the process below to add a new recipe: + +1. Open the `docs/using/recipes.md` source file. +2. Add a second-level Markdown heading naming your recipe at the bottom of the file (e.g., `## Slideshows with JupyterLab and RISE`) +3. Write the body of your recipe under the heading, including whatever command line, links, etc. you need. +4. If you have a Dockerfile, please put it in a `recipe_code` subdirectory. + This file will be built automatically by [contributed-recipes workflow](https://github.com/jupyter/docker-stacks/blob/main/.github/workflows/contributed-recipes.yml). +5. [Submit a pull request](https://github.com/PointCloudLibrary/pcl/wiki/A-step-by-step-guide-on-preparing-and-submitting-a-pull-request) (PR) with your changes. + Maintainers will respond and work with you to address any formatting or content issues. diff --git a/docs/contributing/stacks.md b/docs/contributing/stacks.md new file mode 100644 index 0000000..af55199 --- /dev/null +++ b/docs/contributing/stacks.md @@ -0,0 +1,154 @@ +# Community Stacks + +We love to see the community create and share new Jupyter Docker images. +We've put together a [cookiecutter project](https://github.com/jupyter/cookiecutter-docker-stacks) +and the documentation below to help you get started defining, building, and sharing your Jupyter environments in Docker. + +Following these steps will: + +1. Set up a project on GitHub containing a Dockerfile based on any image we provide. +2. Configure GitHub Actions to build and test your image when users submit pull requests to your repository. +3. Configure Quay.io to host your images for others to use. +4. Update the [list of community stacks](../using/selecting.md#community-stacks) in this documentation to include your image. + +This approach mirrors how we build and share the core stack images. +Feel free to follow it or pave your path using alternative services and build tools. + +## Creating a Project + +First, install [cookiecutter](https://github.com/cookiecutter/cookiecutter) using _pip_ or _mamba_: + +```bash +pip install cookiecutter # or mamba install cookiecutter +``` + +Run the cookiecutter command pointing to the [jupyter/cookiecutter-docker-stacks](https://github.com/jupyter/cookiecutter-docker-stacks) project on GitHub. + +```bash +cookiecutter https://github.com/jupyter/cookiecutter-docker-stacks.git +``` + +Enter a name for your new stack image. +This will serve as both the git repository name and the part of the Docker image name after the slash. + +```text +stack_name [my-jupyter-stack]: +``` + +Enter the user or organization name under which this stack will reside on Quay.io. +You must have access to manage this Quay.io organization to push images here. + +```text +stack_org [my-project]: +``` + +Select an image from the `jupyter/docker-stacks` project that will serve as the base for your new image. + +```text +stack_base_image [quay.io/jupyter/base-notebook]: +``` + +Enter a longer description of the stack for your README. + +```text +stack_description [my-jupyter-stack is a community-maintained Jupyter Docker Stack image]: +``` + +Create a GitHub repository to store your project. +Initialize your project as a Git repository and push it to GitHub. + +```bash +cd + +git init +git add . +git commit -m 'Seed repo' +git remote add origin +git push -u origin main +``` + +## Exploring GitHub Actions + +1. By default, the newly `.github/workflows/docker.yaml` will trigger the CI pipeline whenever you push to your `main` branch + and when any Pull Requests are made to your repository. + For more details on this configuration, visit the [GitHub actions documentation on triggers](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows). + +2. Go to your repository and click on the **Actions** tab. + From there, you can click on the workflows on the left-hand side of the screen. + + ![GitHub page for jupyter/docker-stacks with the Actions tab active and a rectangle around the "Build Docker Images" workflow in the UI](../_static/contributing/stacks/github-actions-tab.png) + + ```{note} + The first run is expected to fail because we haven't yet added Docker credentials to push the image + ``` + +3. In the next screen, you will see information about the workflow run and duration. + If you click the button with the workflow name again, you will see the logs for the workflow steps. + + ![GitHub Actions page showing the "Build Docker Images" workflow](../_static/contributing/stacks/github-actions-workflow.png) + +## Configuring Docker Hub + +```{note} +Jupyter Docker Stacks are hosted on Quay.io, but in this example, we show you how to host your image on Docker Hub. +``` + +Now, configure Docker Hub to build your stack image and push it to the Docker Hub repository whenever +you merge a GitHub pull request to the main branch of your project. + +1. Visit [https://hub.docker.com/](https://hub.docker.com/) and log in. +2. Create a new repository - make sure to use the correct namespace (account or organization). + Enter the name of the image matching the one you entered when prompted with `stack_name` by the cookiecutter. + + ![Docker Hub - 'Create repository' page with the name field set to "My specialized jupyter stack"](../_static/contributing/stacks/docker-repo-name.png) + +3. Enter a description for your image. +4. Click on your avatar in the top-right corner and select Account Settings. + + ![The Docker Hub page zoomed into the user's settings and accounts menu](../_static/contributing/stacks/docker-user-dropdown.png) + +5. Click on **Security** and then click on the **New Access Token** button. + + ![Docker Hub - Account page with the "Security" tab active and a rectangle highlighting the "New Access Token" button in the UI](../_static/contributing/stacks/docker-org-security.png) + +6. Enter a meaningful name for your token and click on **Generate** + + ![Docker Hub - New Access Token page with the name field set to "test-stack token"](../_static/contributing/stacks/docker-org-create-token.png) + +7. Copy the personal access token displayed on the next screen. + + ```{note} + **You will not be able to see it again after you close the pop-up window**. + ``` + +8. Head back to your GitHub repository and click on the **Settings tab**. +9. Click on the **Secrets and variables->Actions** section and then on the **New repository secret** button in the top right corner. + + ![GitHub page with the "Setting" tab active and a rectangle highlighting the "New repository secret" button in the UI](../_static/contributing/stacks/github-create-secrets.png) + +10. Create a **DOCKERHUB_TOKEN** secret and paste the Personal Access Token from Docker Hub in the **value** field. + + ![GitHub - Actions/New secret page with the Name field set to "DOCKERHUB_TOKEN"](../_static/contributing/stacks/github-secret-token.png) + +11. Now you're ready to go and you can restart a failed workflow. + +## Defining Your Image + +Make edits to the Dockerfile in your project to add third-party libraries and configure Jupyter applications. +Refer to the Dockerfiles for the core stacks (e.g., [jupyter/datascience-notebook](https://github.com/jupyter/docker-stacks/blob/main/images/datascience-notebook/Dockerfile)) +to get a feel for what's possible and the best practices. + +[Submit pull requests](https://github.com/PointCloudLibrary/pcl/wiki/A-step-by-step-guide-on-preparing-and-submitting-a-pull-request) +to your project repository on GitHub. +Ensure your image builds correctly on GitHub Actions before merging to the main branch. +After merging to the main branch, your image will be built and pushed to the Docker Hub automatically. + +## Sharing Your Image + +Finally, if you'd like to add a link to your project to this documentation site, please do the following: + +1. Fork the [jupyter/docker-stacks](https://github.com/jupyter/docker-stacks) GitHub repository. +2. Open the `docs/using/selecting.md` source file and locate the **Community Stacks** section in your fork. +3. Add a table entry with a link to your project, a binder link, and a short description of what your Docker image contains. +4. [Submit a pull request](https://github.com/PointCloudLibrary/pcl/wiki/A-step-by-step-guide-on-preparing-and-submitting-a-pull-request)(PR) with your changes. + Maintainers will respond and work with you to address any formatting or content issues. diff --git a/docs/contributing/tests.md b/docs/contributing/tests.md new file mode 100644 index 0000000..3d7888b --- /dev/null +++ b/docs/contributing/tests.md @@ -0,0 +1,46 @@ +# Image Tests + +We greatly appreciate Pull Requests that extend the automated tests that vet the basic functionality of the Docker images. + +## How the Tests Work + +A [GitHub Action workflow](https://github.com/jupyter/docker-stacks/blob/main/.github/workflows/docker.yml) +runs tests against pull requests submitted to the `jupyter/docker-stacks` repository. + +We use the `pytest` module to run tests on the image. +`conftest.py` and `pytest.ini` in the `tests` folder define the environment in which tests are run. +More info on `pytest` can be found [here](https://docs.pytest.org/en/latest/contents.html). + +The actual image-specific test files are located in folders like `tests//` (e.g., `tests/docker-stacks-foundation/`, `tests/minimal-notebook/`, etc.). + +```{note} +If your test is located in `tests//`, it will be run against the `jupyter/` image and against all the [images inherited from this image](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html#image-relationships. +``` + +Many tests make use of global [pytest fixtures](https://docs.pytest.org/en/latest/reference/fixtures.html) +defined in the [conftest.py](https://github.com/jupyter/docker-stacks/blob/main/tests/conftest.py) file. + +## Unit tests + +You can add a unit test if you want to run a Python script in one of our images. +You should create a `tests//units/` directory, if it doesn't already exist, and put your file there. +Files in this folder will be executed in the container when tests are run. +You can see an [TensorFlow package example here](https://github.com/jupyter/docker-stacks/blob/HEAD/tests/tensorflow-notebook/units/unit_tensorflow.py). + +## Contributing New Tests + +Please follow the process below to add new tests: + +1. Add your test code to one of the modules in the `tests//` directory or create a new module. +2. Build one or more images you intend to test and run the tests locally. + If you use `make`, call: + + ```bash + make build/ + make test/ + ``` + +3. [Submit a pull request](https://github.com/PointCloudLibrary/pcl/wiki/A-step-by-step-guide-on-preparing-and-submitting-a-pull-request) + (PR) with your changes. +4. Watch for GitHub to report a build success or failure for your PR on GitHub. +5. Discuss changes with the maintainers and address any issues running the tests on GitHub. diff --git a/docs/images/inherit.svg b/docs/images/inherit.svg new file mode 100644 index 0000000..5324df8 --- /dev/null +++ b/docs/images/inherit.svg @@ -0,0 +1,80 @@ + + + + + + + + + blockdiag + + + + + + + + + + + + + + + ubuntu + (LTS with point release) + + docker-stacks-foundation + + base-notebook + + minimal-notebook + + scipy-notebook + + r-notebook + + julia-notebook + + tensorflow-notebook + + pytorch-notebook + + datascience-notebook + + pyspark-notebook + + all-spark-notebook + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/index.rst b/docs/index.rst new file mode 100644 index 0000000..896ca0f --- /dev/null +++ b/docs/index.rst @@ -0,0 +1,45 @@ +.. include:: ../README.md + :parser: myst_parser.sphinx_ + +Table of Contents +----------------- + +.. toctree:: + :maxdepth: 2 + :caption: User Guide + + using/selecting + using/running + using/common + using/specifics + using/recipes + using/troubleshooting + using/faq + +.. toctree:: + :maxdepth: 2 + :caption: Contributor Guide + + contributing/issues + contributing/packages + contributing/recipes + contributing/lint + contributing/tests + contributing/features + contributing/stacks + +.. toctree:: + :maxdepth: 2 + :caption: Maintainer Guide + + maintaining/new-images-and-packages-policy + maintaining/tasks + maintaining/aarch64-runner + +.. toctree:: + :maxdepth: 2 + :caption: Getting Help + + Issue Tracker on GitHub + Jupyter Discourse Forum + Jupyter Website diff --git a/docs/maintaining/aarch64-runner.md b/docs/maintaining/aarch64-runner.md new file mode 100644 index 0000000..a0beed1 --- /dev/null +++ b/docs/maintaining/aarch64-runner.md @@ -0,0 +1,30 @@ +# Self-hosted runners + +For building `aarch64` images, we use self-hosted GitHub runners. +It is recommended to have at least two runners to allow better parallelism. +Each runner is recommended to have at least _2 cores_ and _30 GB_ of disk space. + +Add a new runner: + +- To use [Oracle OCI](https://www.oracle.com/cloud/), create a compute instance `VM.Standard.A1.Flex`. +- To use [Google Cloud](https://cloud.google.com), use [this instruction](https://cloud.google.com/compute/docs/instances/create-arm-vm-instance#armpublicimage). + +Configure your runner: + +1. Run under `root`: + + ```bash + /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/jupyter/docker-stacks/HEAD/aarch64-runner/setup.sh)" + ``` + + This will perform the initial runner setup and create a user `runner-user` without `sudo` capabilities. + +2. Set up a new GitHub Runner under `runner-user` using [GitHub Instructions](https://github.com/jupyter/docker-stacks/settings/actions/runners/new?arch=arm64&os=linux). + **Do not `./run.sh` yet**. +3. Run under `root`: + + ```bash + cd /home/runner-user/actions-runner/ && ./svc.sh install runner-user + ``` + +4. Reboot the VM to apply all updates and run GitHub runner. diff --git a/docs/maintaining/new-images-and-packages-policy.md b/docs/maintaining/new-images-and-packages-policy.md new file mode 100644 index 0000000..ec29745 --- /dev/null +++ b/docs/maintaining/new-images-and-packages-policy.md @@ -0,0 +1,35 @@ +# Policy on adding new images and packages + +There are many things we consider while adding new images and packages. + +Here is a non-exhaustive list of things we do care about: + +1. **Software health**, details, and maintenance status + - reasonable versioning is adopted, and the version is considered to be stable + - has been around for several years + - the package maintains documentation + - a changelog is actively maintained + - a release procedure with helpful automation is established + - multiple people are involved in the maintenance of the project + - provides a `conda-forge` package besides a `pypi` package, where both are kept up to date + - supports both `x86_64` and `aarch64` architectures +2. **Installation consequences** + - GitHub Actions build time + - Image sizes + - All requirements should be installed as well +3. Jupyter Docker Stacks _**image fit**_ + - new package or stack is changing (or inherits from) the most suitable stack +4. **Software impact** for users of docker-stacks images + - How this image can help existing users, or maybe reduce the need to build new images +5. Why it shouldn't just be a documented **recipe** +6. Impact on **security** + - Does the package open additional ports, or add new web endpoints, that could be exploited? + +With all this in mind, we have a voting group, that consists of +[@mathbunnyru](https://github.com/mathbunnyru), +[@consideRatio](https://github.com/consideRatio), +[@yuvipanda](https://github.com/yuvipanda), and +[@manics](https://github.com/manics). + +This voting group is responsible for accepting or declining new packages and stacks. +The change is accepted, if there are **at least 2 positive votes**. diff --git a/docs/maintaining/tasks.md b/docs/maintaining/tasks.md new file mode 100644 index 0000000..274bded --- /dev/null +++ b/docs/maintaining/tasks.md @@ -0,0 +1,71 @@ +# Maintainer Playbook + +## Merging Pull Requests + +To build new images and publish them to the Registry, do the following: + +1. Make sure GitHub Actions status checks pass for the PR. +2. Merge the PR. +3. Monitor the merge commit GitHub Actions status. + + ```{note} + GitHub Actions are pretty reliable, so please investigate if some error occurs. + Building Docker images in PRs is the same as building them in the default branch, + except single-platform images are pushed to Registry and then tags are merged for `x86_64` and `aarch64`. + ``` + +4. Avoid merging another PR to the main branch until all pending builds in the main branch are complete. + This way, you will know which commit might have broken the build + and also have the correct tags for moving tags (like the `Python` version). + +## Updating Python version + +When a new `Python` version is released, we wait for: + +- all the dependencies to be available (as wheels or in `conda-forge`). +- the first `Python` patch release for this version. + This allows us to avoid many bugs, which can happen in a major release. + +## Updating the Ubuntu Base Image + +`jupyter/docker-stacks-foundation` is based on the LTS Ubuntu docker image. +We are waiting for the first point release of the new LTS Ubuntu before updating the version. +Other images are directly or indirectly inherited from `docker-stacks-foundation`. +We rebuild our images automatically each week, which means they frequently receive updates. + +When there's a security fix in the Ubuntu base image, it's a good idea to manually trigger the rebuild of images +[from the GitHub actions workflow UI](https://github.com/jupyter/docker-stacks/actions/workflows/docker.yml). +Pushing the `Run Workflow` button will trigger this process. + +## Adding a New Core Image to the Registry + +```{note} +In general, we do not add new core images and ask contributors to either +create a [recipe](../using/recipes.md) or [community stack](../contributing/stacks.md). +We have a [policy](./new-images-and-packages-policy.md), which we consider when adding new images or new packages to existing images. +``` + +You can see an example of adding a new image [here](https://github.com/jupyter/docker-stacks/pull/1936/files). + +When there's a new stack definition, check before merging the PR: + +1. PR includes an update to the stack overview diagram + [in the documentation](../using/selecting.md#image-relationships). + The image links to the [blockdiag source](http://interactive.blockdiag.com/) used to create it. +2. PR updates the [Makefile](https://github.com/jupyter/docker-stacks/blob/main/Makefile), + which is used to build the stacks in order on GitHub Actions. +3. Necessary Tagger(s)/Manifest(s) are added for the new image + in the [tagging](https://github.com/jupyter/docker-stacks/tree/main/tagging) folder. +4. A new repository is created in the `jupyter` organization in the Registry, + and it's named after the stack folder in the git repo. +5. Robot `Write` permission is added in the `Repository Settings`. + +## Adding a New Registry Owner Account + +1. Visit +2. Add the maintainer's username. + +## Restarting a failed build + +If an automated build in GitHub Actions has got you down, you can restart failed steps on GitHub. +You can also download the artifacts and investigate them for any issues. diff --git a/docs/requirements.txt b/docs/requirements.txt new file mode 100644 index 0000000..be05ec4 --- /dev/null +++ b/docs/requirements.txt @@ -0,0 +1,8 @@ +# ReadTheDocs environment contains old package versions preinstalled +# So, to ensure we have modern packages, we pin minimum versions of the packages we need +docutils>=0.17.1 +myst-parser>=0.18.0 +sphinx>=4.5.0 +sphinx-book-theme>=1.0.0 +sphinx-copybutton>=0.5.0 +sphinx-last-updated-by-git>=0.3.4 diff --git a/docs/using/common.md b/docs/using/common.md new file mode 100644 index 0000000..b3b314c --- /dev/null +++ b/docs/using/common.md @@ -0,0 +1,286 @@ +# Common Features + +Except for `jupyter/docker-stacks-foundation`, a container launched from any Jupyter Docker Stacks image runs a Jupyter Server with the JupyterLab frontend. +The container does so by executing a `start-notebook.py` script. +This script configures the internal container environment and then runs `jupyter lab`, passing any command-line arguments received. + +This page describes the options supported by the startup script and how to bypass it to run alternative commands. + +## Jupyter Server Options + +You can pass [Jupyter Server options](https://jupyter-server.readthedocs.io/en/latest/operators/public-server.html) to the `start-notebook.py` script when launching the container. + +1. For example, to secure the Jupyter Server with a [custom password](https://jupyter-server.readthedocs.io/en/latest/operators/public-server.html#preparing-a-hashed-password) + hashed using `jupyter_server.auth.passwd()` instead of the default token, + you can run the following (this hash was generated for the `my-password` password): + + ```bash + docker run -it --rm -p 8888:8888 quay.io/jupyter/base-notebook \ + start-notebook.py --PasswordIdentityProvider.hashed_password='argon2:$argon2id$v=19$m=10240,t=10,p=8$JdAN3fe9J45NvK/EPuGCvA$O/tbxglbwRpOFuBNTYrymAEH6370Q2z+eS1eF4GM6Do' + ``` + +2. To set the [base URL](https://jupyter-server.readthedocs.io/en/latest/operators/public-server.html#running-the-notebook-with-a-customized-url-prefix) of the Jupyter Server, you can run the following: + + ```bash + docker run -it --rm -p 8888:8888 quay.io/jupyter/base-notebook \ + start-notebook.py --ServerApp.base_url=/customized/url/prefix/ + ``` + +## Docker Options + +You may instruct the `start-notebook.py` script to customize the container environment before launching the Server. +You do so by passing arguments to the `docker run` command. + +### User-related configurations + +- `-e NB_USER=` - The desired username and associated home folder. + The default value is `jovyan`. + Setting `NB_USER` refits the `jovyan` default user and ensures that the desired user has the correct file permissions + for the new home directory created at `/home/`. + For this option to take effect, you **must** run the container with `--user root`, set the working directory `-w "/home/"` + and set the environment variable `-e CHOWN_HOME=yes`. + + _Example usage:_ + + ```bash + docker run -it --rm \ + -p 8888:8888 \ + --user root \ + -e NB_USER="my-username" \ + -e CHOWN_HOME=yes \ + -w "/home/my-username" \ + quay.io/jupyter/base-notebook + ``` + + ```{note} + If you set `NB_USER` to `root`, the `root` home dir will be set to `/home/root`. + See discussion [here](https://github.com/jupyter/docker-stacks/issues/2042). + ``` + +- `-e NB_UID=` - Instructs the startup script to switch the numeric user ID of `${NB_USER}` to the given value. + The default value is `1000`. + This feature is useful when mounting host volumes with specific owner permissions. + You **must** run the container with `--user root` for this option to take effect. + (The startup script will `su ${NB_USER}` after adjusting the user ID.) + Instead, you might consider using the modern Docker-native options [`--user`](https://docs.docker.com/engine/reference/run/#user) and + [`--group-add`](https://docs.docker.com/engine/reference/run/#additional-groups) - see the last bullet in this section for more details. + See bullet points regarding `--user` and `--group-add`. + +- `-e NB_GID=` - Instructs the startup script to change the primary group of `${NB_USER}` to `${NB_GID}` + (the new group is added with a name of `${NB_GROUP}` if it is defined. Otherwise, the group is named `${NB_USER}`). + This feature is useful when mounting host volumes with specific group permissions. + You **must** run the container with `--user root` for this option to take effect. + (The startup script will `su ${NB_USER}` after adjusting the group ID.) + Instead, you might consider using modern Docker options `--user` and `--group-add`. + See bullet points regarding `--user` and `--group-add`. + The user is added to the supplemental group `users` (gid 100) to grant write access to the home directory and `/opt/conda`. + If you override the user/group logic, ensure the user stays in the group `users` if you want them to be able to modify files in the image. + +- `-e NB_GROUP=` - The name used for `${NB_GID}`, which defaults to `${NB_USER}`. + This group name is only used if `${NB_GID}` is specified and completely optional: there is only a cosmetic effect. + +- `--user 5000 --group-add users` - Launches the container with a specific user ID and adds that user to the `users` group so that it can modify files in the default home directory and `/opt/conda`. + You can use these arguments as alternatives to setting `${NB_UID}` and `${NB_GID}`. + +## Permission-specific configurations + +- `-e NB_UMASK=` - Configures Jupyter to use a different `umask` value from default, i.e. `022`. + For example, if setting `umask` to `002`, new files will be readable and writable by group members instead of the owner only. + [Check this Wikipedia article](https://en.wikipedia.org/wiki/Umask) for an in-depth description of `umask` and suitable values for multiple needs. + While the default `umask` value should be sufficient for most use cases, you can set the `NB_UMASK` value to fit your requirements. + + ```{note} + `NB_UMASK` when set only applies to the Jupyter process itself - + you cannot use it to set a `umask` for additional files created during `run-hooks.sh`. + For example, via `pip` or `conda`. + If you need to set a `umask` for these, you **must** set the `umask` value for each command. + ``` + +- `-e CHOWN_HOME=yes` - Instructs the startup script to change the `${NB_USER}` home directory owner and group to the current value of `${NB_UID}` and `${NB_GID}`. + This change will take effect even if the user home directory is mounted from the host using `-v` as described below. + The change is **not** applied recursively by default. + You can modify the `chown` behavior by setting `CHOWN_HOME_OPTS` (e.g., `-e CHOWN_HOME_OPTS='-R'`). + +- `-e CHOWN_EXTRA=","` - Instructs the startup script to change the owner and group of each comma-separated container directory to the current value of `${NB_UID}` and `${NB_GID}`. + The change is **not** applied recursively by default. + You can modify the `chown` behavior by setting `CHOWN_EXTRA_OPTS` (e.g., `-e CHOWN_EXTRA_OPTS='-R'`). + +- `-e GRANT_SUDO=yes` - Instructs the startup script to grant the `NB_USER` user passwordless `sudo` capability. + You do **not** need this option to allow the user to `conda` or `pip` install additional packages. + This option is helpful for cases when you wish to give `${NB_USER}` the ability to install OS packages with `apt` or modify other root-owned files in the container. + You **must** run the container with `--user root` for this option to take effect. + (The `start-notebook.py` script will `su ${NB_USER}` after adding `${NB_USER}` to sudoers.) + **You should only enable `sudo` if you trust the user or if the container runs on an isolated host.** + +### Additional runtime configurations + +- `-e GEN_CERT=yes` - Instructs the startup script to generate a self-signed SSL certificate. + Configures Jupyter Server to use it to accept encrypted HTTPS connections. +- `-e DOCKER_STACKS_JUPYTER_CMD=` - Instructs the startup script to run `jupyter ${DOCKER_STACKS_JUPYTER_CMD}` instead of the default `jupyter lab` command. + See [Switching back to the classic notebook or using a different startup command][switch_back] for available options. + This setting is helpful in container orchestration environments where setting environment variables is more straightforward than changing command line parameters. +- `-e RESTARTABLE=yes` - Runs Jupyter in a loop so that quitting Jupyter does not cause the container to exit. + This may be useful when installing extensions that require restarting Jupyter. +- `-v /some/host/folder/for/work:/home/jovyan/work` - Mounts a host machine directory as a folder in the container. + This configuration is useful for preserving notebooks and other work even after the container is destroyed. + **You must grant the within-container notebook user or group (`NB_UID` or `NB_GID`) write access to the host directory (e.g., `sudo chown 1000 /some/host/folder/for/work`).** +- `-e JUPYTER_ENV_VARS_TO_UNSET=ADMIN_SECRET_1,ADMIN_SECRET_2` - Unsets specified environment variables in the default startup script. + The variables are unset after the hooks have been executed but before the command provided to the startup script runs. +- `-e NOTEBOOK_ARGS="--log-level='DEBUG' --dev-mode"` - Adds custom options to add to `jupyter` commands. + This way, the user could use any option supported by the `jupyter` subcommand. +- `-e JUPYTER_PORT=8117` - Changes the port in the container that Jupyter is using to the value of the `${JUPYTER_PORT}` environment variable. + This may be useful if you run multiple instances of Jupyter in swarm mode and want to use a different port for each instance. + +## Startup Hooks + +You can further customize the container environment by adding shell scripts (`*.sh`) to be sourced +or executables (`chmod +x`) to be run to the paths below: + +- `/usr/local/bin/start-notebook.d/` - handled **before** any of the standard options noted above are applied +- `/usr/local/bin/before-notebook.d/` - handled **after** all the standard options noted above are applied + and ran right before the Server launches + +See the `run-hooks.sh` script [here](https://github.com/jupyter/docker-stacks/blob/main/images/docker-stacks-foundation/run-hooks.sh) and how it's used in the [`start.sh`](https://github.com/jupyter/docker-stacks/blob/main/images/docker-stacks-foundation/start.sh) +script for execution details. + +## SSL Certificates + +You may mount an SSL key and certificate file into a container and configure the Jupyter Server to use them to accept HTTPS connections. +For example, to mount a host folder containing a `notebook.key` and `notebook.crt` and use them, you might run the following: + +```bash +docker run -it --rm -p 8888:8888 \ + -v /some/host/folder:/etc/ssl/notebook \ + quay.io/jupyter/base-notebook \ + start-notebook.py \ + --ServerApp.keyfile=/etc/ssl/notebook/notebook.key \ + --ServerApp.certfile=/etc/ssl/notebook/notebook.crt +``` + +Alternatively, you may mount a single PEM file containing both the key and certificate. +For example: + +```bash +docker run -it --rm -p 8888:8888 \ + -v /some/host/folder/notebook.pem:/etc/ssl/notebook.pem \ + quay.io/jupyter/base-notebook \ + start-notebook.py \ + --ServerApp.certfile=/etc/ssl/notebook.pem +``` + +In either case, Jupyter Server expects the key and certificate to be a **base64 encoded text file**. +The certificate file or PEM may contain one or more certificates (e.g., server, intermediate, and root). + +For additional information about using SSL, see the following: + +- The [docker-stacks/examples](https://github.com/jupyter/docker-stacks/tree/main/examples) + for information about how to use + [Let's Encrypt](https://letsencrypt.org/) certificates when you run these stacks on a publicly visible domain. +- The [`jupyter_server_config.py`](https://github.com/jupyter/docker-stacks/blob/main/images/base-notebook/jupyter_server_config.py) + file for how this Docker image generates a self-signed certificate. +- The [Jupyter Server documentation](https://jupyter-server.readthedocs.io/en/latest/operators/public-server.html#securing-a-jupyter-server) + for best practices about securing a public Server in general. + +## Alternative Commands + +### Switching back to the classic notebook or using a different startup command + +JupyterLab, built on top of Jupyter Server, is now the default for all the images of the stack. +However, switching back to the classic notebook or using a different startup command is still possible. +You can achieve this by setting the environment variable `DOCKER_STACKS_JUPYTER_CMD` at container startup. +The table below shows some options. +Since `Jupyter Notebook v7` `jupyter-server` is used as a backend. + +| `DOCKER_STACKS_JUPYTER_CMD` | Frontend | +| --------------------------- | ---------------- | +| `lab` (default) | JupyterLab | +| `notebook` | Jupyter Notebook | +| `nbclassic` | NbClassic | +| `server` | None | +| `retro`\* | RetroLab | + +```{note} +- Changing frontend for **JupyterHub singleuser image** is described in [JupyterHub docs](https://jupyterhub.readthedocs.io/en/latest/howto/configuration/config-user-env.html#switching-back-to-the-classic-notebook). +- \* `retro` is not installed at this time, but it could be the case in the future or in a community stack. +- Any other valid `jupyter` subcommand that starts the Jupyter Application can be used. +``` + +Example: + +```bash +# Run Jupyter Server with the Jupyter Notebook frontend +docker run -it --rm \ + -p 8888:8888 \ + -e DOCKER_STACKS_JUPYTER_CMD=notebook \ + quay.io/jupyter/base-notebook +# Executing the command: jupyter notebook ... + +# Use Jupyter NBClassic frontend +docker run -it --rm \ + -p 8888:8888 \ + -e DOCKER_STACKS_JUPYTER_CMD=nbclassic \ + quay.io/jupyter/base-notebook +# Executing the command: jupyter nbclassic ... +``` + +### `start.sh` + +Most of the configuration options in the `start-notebook.py` script are handled by an internal `start.sh` script that automatically runs before the command provided to the container +(it's set as the container entrypoint). +This allows you to specify an arbitrary command that takes advantage of all these features. +For example, to run the text-based `ipython` console in a container, do the following: + +```bash +docker run -it --rm quay.io/jupyter/base-notebook ipython +``` + +This script is handy when you derive a new Dockerfile from this image and install additional Jupyter applications with subcommands like `jupyter console`, `jupyter kernelgateway`, etc. + +## Conda Environments + +The default Python 3.x [Conda environment](https://conda.io/projects/conda/en/latest/user-guide/concepts/environments.html) resides in `/opt/conda`. +The `/opt/conda/bin` directory is part of the default `jovyan` user's `${PATH}`. +That directory is also searched for binaries when run using `sudo` (`sudo my_binary` will search for `my_binary` in `/opt/conda/bin/` + +The `jovyan` user has full read/write access to the `/opt/conda` directory. +You can use either `mamba`, `pip`, or `conda` (`mamba` is recommended) to install new packages without any additional permissions. + +```bash +# install a package into the default (python 3.x) environment and cleanup it after +# the installation +mamba install --yes some-package && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" + +pip install --no-cache-dir some-package && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" + +conda install --yes some-package && \ + conda clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" +``` + +### Using Alternative Channels + +Conda is configured by default to use only the [`conda-forge`](https://anaconda.org/conda-forge) channel. +However, you can use alternative channels, either one-shot by overwriting the default channel in the installation command or by configuring `mamba` to use different channels. +The examples below show how to use the [anaconda default channels](https://repo.anaconda.com/pkgs/main) instead of `conda-forge` to install packages. + +```bash +# using defaults channels to install a package +mamba install --channel defaults humanize + +# configure conda to add default channels at the top of the list +conda config --system --prepend channels defaults + +# install a package +mamba install --yes humanize && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" +``` + +[switch_back]: #switching-back-to-the-classic-notebook-or-using-a-different-startup-command diff --git a/docs/using/faq.md b/docs/using/faq.md new file mode 100644 index 0000000..a8b7168 --- /dev/null +++ b/docs/using/faq.md @@ -0,0 +1,47 @@ +# Frequently Asked Questions (FAQ) + +## How to persist user data + +There are 2 types of data, which you might want to persist. + +1. If you want to persist your environment (i.e. packages installed by `mamba`, `conda`, `pip`, `apt-get`, and so on), + then you should create an inherited image and install packages only once while building your Dockerfile. + An example of using `mamba` and `pip` in a child image is available + [here](./recipes.md#using-mamba-install-recommended-or-pip-install-in-a-child-docker-image). + + ```{note} + If you install a package inside a running container (for example you run `pip install ` in a terminal), + it won't be preserved when you next run your image. + To make it work, install this package in your inherited image and rerun `docker build` command. + ``` + +2. If you want to persist user data (files created by you, like `Python` scripts, notebooks, text files, and so on), + then you should use a + [Docker bind mount](https://docs.docker.com/storage/bind-mounts/) or + [Docker Volume](https://docs.docker.com/storage/volumes/). + You can find [an example of using a bind mount here](./running.md#example-2). + There is also [a mount troubleshooting section](./troubleshooting.md#permission-denied-when-mounting-volumes) if you experience any issues. + +## Why we do not add your favorite package + +We have lots of users with different packages they want to use. +Adding them all is impossible, so we have several images to choose from. +[Choose the image](selecting.md), that is closest to your needs, and feel free to [add your package on top of our images](recipes.md#using-mamba-install-recommended-or-pip-install-in-a-child-docker-image). + +## Who is `jovyan` + +As described [here](https://github.com/jupyter/docker-stacks/issues/358#issuecomment-288844834): + +```text +Jo·vy·an +/ˈjōvēən/ +noun – an inhabitant of Jupyter +``` + +`Jovyan` is often a special term used to describe members of the Jupyter community. +It is also used as the user ID in the Jupyter Docker stacks or referenced in conversations. +You can find more information [here](https://docs.jupyter.org/en/latest/community/content-community.html#what-is-a-jovyan). + +## How to give root permissions to the user + +We have a [recipe for enabling root permissions](recipes.md#using-sudo-within-a-container). diff --git a/docs/using/recipe_code/custom_environment.dockerfile b/docs/using/recipe_code/custom_environment.dockerfile new file mode 100644 index 0000000..547245c --- /dev/null +++ b/docs/using/recipe_code/custom_environment.dockerfile @@ -0,0 +1,48 @@ +FROM quay.io/jupyter/minimal-notebook + +# Name your environment and choose the Python version +ARG env_name=python310 +ARG py_ver=3.10 + +# You can add additional libraries here +RUN mamba create --yes -p "${CONDA_DIR}/envs/${env_name}" \ + python=${py_ver} \ + 'ipykernel' \ + 'jupyterlab' && \ + mamba clean --all -f -y + +# Alternatively, you can comment out the lines above and uncomment those below +# if you'd prefer to use a YAML file present in the docker build context + +# COPY --chown=${NB_UID}:${NB_GID} environment.yml /tmp/ +# RUN mamba env create -p "${CONDA_DIR}/envs/${env_name}" -f /tmp/environment.yml && \ +# mamba clean --all -f -y + +# Create Python kernel and link it to jupyter +RUN "${CONDA_DIR}/envs/${env_name}/bin/python" -m ipykernel install --user --name="${env_name}" && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" + +# Any additional `pip` installs can be added by using the following line +# Using `mamba` is highly recommended though +RUN "${CONDA_DIR}/envs/${env_name}/bin/pip" install --no-cache-dir \ + 'flake8' + +# This changes the custom Python kernel so that the custom environment will +# be activated for the respective Jupyter Notebook and Jupyter Console +# hadolint ignore=DL3059 +RUN /opt/setup-scripts/activate_notebook_custom_env.py "${env_name}" + +# Comment the line above and uncomment the section below instead to activate the custom environment by default +# Note: uncommenting this section makes "${env_name}" default both for Jupyter Notebook and Terminals +# More information here: https://github.com/jupyter/docker-stacks/pull/2047 +# USER root +# RUN \ +# # This changes a startup hook, which will activate the custom environment for the process +# echo conda activate "${env_name}" >> /usr/local/bin/before-notebook.d/10activate-conda-env.sh && \ +# # This makes the custom environment default in Jupyter Terminals for all users which might be created later +# echo conda activate "${env_name}" >> /etc/skel/.bashrc && \ +# # This makes the custom environment default in Jupyter Terminals for already existing NB_USER +# echo conda activate "${env_name}" >> "/home/${NB_USER}/.bashrc" + +USER ${NB_UID} diff --git a/docs/using/recipe_code/dask_jupyterlab.dockerfile b/docs/using/recipe_code/dask_jupyterlab.dockerfile new file mode 100644 index 0000000..f1cd0e6 --- /dev/null +++ b/docs/using/recipe_code/dask_jupyterlab.dockerfile @@ -0,0 +1,10 @@ +FROM quay.io/jupyter/base-notebook + +# Install the Dask dashboard +RUN mamba install --yes 'dask-labextension' && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" + +# Dask Scheduler port +EXPOSE 8787 diff --git a/docs/using/recipe_code/generate_matrix.py b/docs/using/recipe_code/generate_matrix.py new file mode 100755 index 0000000..62159f3 --- /dev/null +++ b/docs/using/recipe_code/generate_matrix.py @@ -0,0 +1,21 @@ +#!/usr/bin/env python3 +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import json +from pathlib import Path +from typing import Any + +THIS_DIR = Path(__file__).parent.resolve() + + +def generate_matrix() -> dict[str, Any]: + dockerfiles = sorted(file.name for file in THIS_DIR.glob("*.dockerfile")) + return { + "dockerfile": dockerfiles, + "runs-on": ["ubuntu-latest", "ARM64"], + "exclude": [{"dockerfile": "oracledb.dockerfile", "runs-on": "ARM64"}], + } + + +if __name__ == "__main__": + print("matrix=" + json.dumps(generate_matrix())) diff --git a/docs/using/recipe_code/jupyterhub_version.dockerfile b/docs/using/recipe_code/jupyterhub_version.dockerfile new file mode 100644 index 0000000..7fd5301 --- /dev/null +++ b/docs/using/recipe_code/jupyterhub_version.dockerfile @@ -0,0 +1,6 @@ +FROM quay.io/jupyter/base-notebook + +RUN mamba install --yes 'jupyterhub==4.0.1' && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" diff --git a/docs/using/recipe_code/mamba_install.dockerfile b/docs/using/recipe_code/mamba_install.dockerfile new file mode 100644 index 0000000..2c4d2c4 --- /dev/null +++ b/docs/using/recipe_code/mamba_install.dockerfile @@ -0,0 +1,13 @@ +FROM quay.io/jupyter/base-notebook + +RUN mamba install --yes 'flake8' && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" + +# Install from the requirements.txt file +COPY --chown=${NB_UID}:${NB_GID} requirements.txt /tmp/ +RUN mamba install --yes --file /tmp/requirements.txt && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" diff --git a/docs/using/recipe_code/manpage_install.dockerfile b/docs/using/recipe_code/manpage_install.dockerfile new file mode 100644 index 0000000..ed8d91d --- /dev/null +++ b/docs/using/recipe_code/manpage_install.dockerfile @@ -0,0 +1,16 @@ +FROM quay.io/jupyter/base-notebook + +# Fix: https://github.com/hadolint/hadolint/wiki/DL4006 +# Fix: https://github.com/koalaman/shellcheck/wiki/SC3014 +SHELL ["/bin/bash", "-o", "pipefail", "-c"] + +USER root + +# `/etc/dpkg/dpkg.cfg.d/excludes` contains several `path-exclude`s, including man pages +# Remove it, then install man, install docs +RUN rm /etc/dpkg/dpkg.cfg.d/excludes && \ + apt-get update --yes && \ + dpkg -l | grep ^ii | cut -d' ' -f3 | xargs apt-get install --yes --no-install-recommends --reinstall man && \ + apt-get clean && rm -rf /var/lib/apt/lists/* + +USER ${NB_UID} diff --git a/docs/using/recipe_code/microsoft_odbc.dockerfile b/docs/using/recipe_code/microsoft_odbc.dockerfile new file mode 100644 index 0000000..1138d69 --- /dev/null +++ b/docs/using/recipe_code/microsoft_odbc.dockerfile @@ -0,0 +1,30 @@ +FROM quay.io/jupyter/base-notebook + +# Fix: https://github.com/hadolint/hadolint/wiki/DL4006 +# Fix: https://github.com/koalaman/shellcheck/wiki/SC3014 +SHELL ["/bin/bash", "-o", "pipefail", "-c"] + +USER root + +ENV MSSQL_DRIVER "ODBC Driver 18 for SQL Server" +ENV PATH="/opt/mssql-tools18/bin:${PATH}" + +RUN apt-get update --yes && \ + apt-get install --yes --no-install-recommends curl gnupg2 lsb-release && \ + curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - && \ + curl "https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/prod.list" > /etc/apt/sources.list.d/mssql-release.list && \ + apt-get update --yes && \ + ACCEPT_EULA=Y apt-get install --yes --no-install-recommends msodbcsql18 && \ + # optional: for bcp and sqlcmd + ACCEPT_EULA=Y apt-get install --yes --no-install-recommends mssql-tools18 && \ + # optional: for unixODBC development headers + apt-get install --yes --no-install-recommends unixodbc-dev && \ + apt-get clean && rm -rf /var/lib/apt/lists/* + +# Switch back to jovyan to avoid accidental container runs as root +USER ${NB_UID} + +RUN mamba install --yes 'pyodbc' && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" diff --git a/docs/using/recipe_code/oracledb.dockerfile b/docs/using/recipe_code/oracledb.dockerfile new file mode 100644 index 0000000..85564d0 --- /dev/null +++ b/docs/using/recipe_code/oracledb.dockerfile @@ -0,0 +1,59 @@ +FROM quay.io/jupyter/base-notebook + +USER root + +# Install Java & Oracle SQL Instant Client +RUN apt-get update --yes && \ + apt-get install --yes --no-install-recommends software-properties-common && \ + add-apt-repository universe && \ + apt-get update --yes && \ + apt-get install --yes --no-install-recommends alien default-jre default-jdk openjdk-11-jdk libaio1 && \ + apt-get clean && rm -rf /var/lib/apt/lists/* + +# Oracle +ARG INSTANTCLIENT_MAJOR_VERSION=21 +ARG INSTANTCLIENT_VERSION=${INSTANTCLIENT_MAJOR_VERSION}.11.0.0.0-1 +ARG INSTANTCLIENT_URL=https://download.oracle.com/otn_software/linux/instantclient/2111000 + +# Then install Oracle SQL Instant client, SQL+Plus, tools, and JDBC. +# Note: You may need to change the URL to a newer version. +# See: https://www.oracle.com/es/database/technologies/instant-client/linux-x86-64-downloads.html +RUN mkdir "/opt/oracle" +WORKDIR "/opt/oracle" +RUN wget --progress=dot:giga "${INSTANTCLIENT_URL}/oracle-instantclient-basiclite-${INSTANTCLIENT_VERSION}.el8.x86_64.rpm" && \ + alien --install --scripts "oracle-instantclient-basiclite-${INSTANTCLIENT_VERSION}.el8.x86_64.rpm" && \ + wget --progress=dot:giga "${INSTANTCLIENT_URL}/oracle-instantclient-sqlplus-${INSTANTCLIENT_VERSION}.el8.x86_64.rpm" && \ + alien --install --scripts "oracle-instantclient-sqlplus-${INSTANTCLIENT_VERSION}.el8.x86_64.rpm" && \ + wget --progress=dot:giga "${INSTANTCLIENT_URL}/oracle-instantclient-tools-${INSTANTCLIENT_VERSION}.el8.x86_64.rpm" && \ + alien --install --scripts "oracle-instantclient-tools-${INSTANTCLIENT_VERSION}.el8.x86_64.rpm" && \ + wget --progress=dot:giga "${INSTANTCLIENT_URL}/oracle-instantclient-jdbc-${INSTANTCLIENT_VERSION}.el8.x86_64.rpm" && \ + alien --install --scripts "oracle-instantclient-jdbc-${INSTANTCLIENT_VERSION}.el8.x86_64.rpm" && \ + chown -R "${NB_UID}":"${NB_GID}" "${HOME}/.rpmdb" && \ + rm -f ./*.rpm + +# And configure variables +RUN echo "ORACLE_HOME=/usr/lib/oracle/${INSTANTCLIENT_MAJOR_VERSION}/client64" >> "${HOME}/.bashrc" && \ + echo "PATH=${ORACLE_HOME}/bin:${PATH}" >> "${HOME}/.bashrc" && \ + echo "LD_LIBRARY_PATH=${ORACLE_HOME}/lib:${LD_LIBRARY_PATH}" >> "${HOME}/.bashrc" && \ + echo "export ORACLE_HOME" >> "${HOME}/.bashrc" && \ + echo "export PATH" >> "${HOME}/.bashrc" && \ + echo "export LD_LIBRARY_PATH" >> "${HOME}/.bashrc" + +# Add credentials for /redacted/ using Oracle DB. +WORKDIR /usr/lib/oracle/${INSTANTCLIENT_MAJOR_VERSION}/client64/lib/network/admin/ +# Add a wildcard `[]` on the last letter of the filename to avoid throwing an error if the file does not exist. +# See: https://stackoverflow.com/questions/31528384/conditional-copy-add-in-dockerfile +COPY cwallet.ss[o] ./ +COPY sqlnet.or[a] ./ +COPY tnsnames.or[a] ./ + +# Switch back to jovyan to avoid accidental container runs as root +USER "${NB_UID}" + +WORKDIR "${HOME}" + +# Install `oracledb` Python library to use Oracle SQL Instant Client +RUN mamba install --yes 'oracledb' && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" diff --git a/docs/using/recipe_code/pip_install.dockerfile b/docs/using/recipe_code/pip_install.dockerfile new file mode 100644 index 0000000..fc6508b --- /dev/null +++ b/docs/using/recipe_code/pip_install.dockerfile @@ -0,0 +1,12 @@ +FROM quay.io/jupyter/base-notebook + +# Install in the default python3 environment +RUN pip install --no-cache-dir 'flake8' && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" + +# Install from the requirements.txt file +COPY --chown=${NB_UID}:${NB_GID} requirements.txt /tmp/ +RUN pip install --no-cache-dir --requirement /tmp/requirements.txt && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" diff --git a/docs/using/recipe_code/requirements.txt b/docs/using/recipe_code/requirements.txt new file mode 100644 index 0000000..3379e2a --- /dev/null +++ b/docs/using/recipe_code/requirements.txt @@ -0,0 +1 @@ +autoflake diff --git a/docs/using/recipe_code/rise_jupyterlab.dockerfile b/docs/using/recipe_code/rise_jupyterlab.dockerfile new file mode 100644 index 0000000..7d796ca --- /dev/null +++ b/docs/using/recipe_code/rise_jupyterlab.dockerfile @@ -0,0 +1,6 @@ +FROM quay.io/jupyter/base-notebook + +RUN mamba install --yes 'jupyterlab_rise' && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" diff --git a/docs/using/recipe_code/spellcheck_notebook_v6.dockerfile b/docs/using/recipe_code/spellcheck_notebook_v6.dockerfile new file mode 100644 index 0000000..1e12b56 --- /dev/null +++ b/docs/using/recipe_code/spellcheck_notebook_v6.dockerfile @@ -0,0 +1,9 @@ +# Using Docker Hub here, because this image is old and not pushed to Quay.io +FROM docker.io/jupyter/base-notebook:notebook-6.5.4 + +RUN pip install --no-cache-dir 'jupyter_contrib_nbextensions' && \ + jupyter contrib nbextension install --user && \ + # can modify or enable additional extensions here + jupyter nbclassic-extension enable spellchecker/main --user && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" diff --git a/docs/using/recipe_code/xgboost.dockerfile b/docs/using/recipe_code/xgboost.dockerfile new file mode 100644 index 0000000..14afc79 --- /dev/null +++ b/docs/using/recipe_code/xgboost.dockerfile @@ -0,0 +1,6 @@ +FROM quay.io/jupyter/base-notebook + +RUN mamba install --yes 'py-xgboost' && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" diff --git a/docs/using/recipes.md b/docs/using/recipes.md new file mode 100644 index 0000000..f42696d --- /dev/null +++ b/docs/using/recipes.md @@ -0,0 +1,527 @@ +# Contributed Recipes + +Users sometimes share interesting ways of using the Jupyter Docker Stacks. +We encourage users to [contribute these recipes](../contributing/recipes.md) to the documentation in case they prove helpful to other community members by submitting a pull request to `docs/using/recipes.md`. +The sections below capture this knowledge. + +## Using `sudo` within a container + +Password authentication is disabled for the `NB_USER` (e.g., `jovyan`). +We made this choice to avoid distributing images with a weak default password that users ~might~ will forget to change before running a container on a publicly accessible host. + +You can grant the within-container `NB_USER` passwordless `sudo` access by adding `--user root` and `-e GRANT_SUDO=yes` to your Docker command line or appropriate container orchestrator config. + +For example: + +```bash +docker run -it --rm \ + --user root \ + -e GRANT_SUDO=yes \ + quay.io/jupyter/base-notebook +``` + +**You should only enable `sudo` if you trust the user and/or if the container is running on an isolated host.** +See [Docker security documentation](https://docs.docker.com/engine/security/userns-remap/) for more information about running containers as `root`. + +## Using `mamba install` (recommended) or `pip install` in a Child Docker image + +Create a new Dockerfile like the one shown below. +To use a requirements.txt file, first, create your `requirements.txt` file with the listing of packages desired. + +```{literalinclude} recipe_code/mamba_install.dockerfile +:language: docker +``` + +`pip` usage is similar: + +```{literalinclude} recipe_code/pip_install.dockerfile +:language: docker +``` + +Then build a new image. + +```bash +docker build --rm --tag my-custom-image . +``` + +You can then run the image as follows: + +```bash +docker run -it --rm \ + -p 8888:8888 \ + my-custom-image +``` + +## Add a custom conda environment and Jupyter kernel + +The default version of `Python` that ships with the image may not be the version you want. +The instructions below permit adding a conda environment with a different `Python` version and making it accessible to Jupyter. +You may also use older images like `jupyter/base-notebook:python-3.10`. +A list of all tags can be found [here](https://github.com/jupyter/docker-stacks/wiki) + +```{literalinclude} recipe_code/custom_environment.dockerfile +:language: docker +``` + +## Dask JupyterLab Extension + +[Dask JupyterLab Extension](https://github.com/dask/dask-labextension) provides a JupyterLab extension to manage Dask clusters, as well as embed Dask's dashboard plots directly into JupyterLab panes. +Create the Dockerfile as: + +```{literalinclude} recipe_code/dask_jupyterlab.dockerfile +:language: docker +``` + +And build the image as: + +```bash +docker build --rm --tag my-custom-image . +``` + +Once built, run using the command: + +```bash +docker run -it --rm \ + -p 8888:8888 \ + -p 8787:8787 \ + my-custom-image +``` + +## Let's Encrypt a Server + +```{warning} +This recipe is not tested and might be broken. +``` + +See the README for basic automation here + +which includes steps for requesting and renewing a Let's Encrypt certificate. + +Ref: + +## Slideshows with JupyterLab and RISE + +[RISE](https://github.com/jupyterlab-contrib/rise): "Live" Reveal.js JupyterLab Slideshow Extension. + +```{note} +We're providing the recipe to install the JupyterLab extension. +You can find the original Jupyter Notebook extension [here](https://github.com/damianavila/RISE) +``` + +```{literalinclude} recipe_code/rise_jupyterlab.dockerfile +:language: docker +``` + +## xgboost + +```{literalinclude} recipe_code/xgboost.dockerfile +:language: docker +``` + +## Running behind an nginx proxy + +```{warning} +This recipe is not tested and might be broken. +``` + +Sometimes it is helpful to run the Jupyter instance behind an nginx proxy, for example: + +- you would prefer to access the notebook at a server URL with a path + (`https://example.com/jupyter`) rather than a port (`https://example.com:8888`) +- you may have many services in addition to Jupyter running on the same server + and want nginx to help improve server performance in managing the connections + +Here is a [quick example of NGINX configuration](https://gist.github.com/cboettig/8643341bd3c93b62b5c2) to get started. +You'll need a server, a `.crt`, and a `.key` file for your server, and `docker` & `docker-compose` installed. +Then download the files at that gist and run `docker-compose up` to test it out. +Customize the `nginx.conf` file to set the desired paths and add other services. + +## Host volume mounts and notebook errors + +If you are mounting a host directory as `/home/jovyan/work` in your container, +and you receive permission errors or connection errors when you create a notebook, +be sure that the `jovyan` user (`UID=1000` by default) has read/write access to the directory on the host. +Alternatively, specify the UID of the `jovyan` user on container startup using the `-e NB_UID` option +described in the [Common Features, Docker Options section](common.md#docker-options) + +Ref: + +## Manpage installation + +Most containers, including our Ubuntu base image, ship without manpages installed to save space. +You can use the following Dockerfile to inherit from one of our images to enable manpages: + +```{literalinclude} recipe_code/manpage_install.dockerfile +:language: docker +``` + +Adding the documentation on top of the existing image wastes a lot of space +and requires reinstalling every system package, +which can take additional time and bandwidth. +Enabling manpages in the base Ubuntu layer prevents this container bloat. +To achieve this, use the previous `Dockerfile`'s commands with the original `ubuntu` image as your base container: + +```dockerfile +FROM ubuntu:22.04 +``` + +Be sure to check the current base image in `jupyter/docker-stacks-foundation` before building. + +## JupyterHub + +We also have contributed recipes for using JupyterHub. + +### Use JupyterHub's DockerSpawner + +You can find an example of using DockerSpawner [here](https://github.com/jupyterhub/jupyterhub-deploy-docker/tree/main/basic-example). + +### Containers with a specific version of JupyterHub + +The version of `jupyterhub` in your image should match the +version in JupyterHub itself. +To use a specific version of JupyterHub, do the following: + +```{literalinclude} recipe_code/jupyterhub_version.dockerfile +:language: docker +``` + +## Spark + +A few suggestions have been made regarding using Docker Stacks with Spark. + +### Using PySpark with AWS S3 + +```{warning} +This recipe is not tested and might be broken. +``` + +Using Spark session for Hadoop 2.7.3 + +```python +import os + +# To figure out what version of Hadoop, run: +# ls /usr/local/spark/jars/hadoop* +os.environ["PYSPARK_SUBMIT_ARGS"] = ( + '--packages "org.apache.hadoop:hadoop-aws:2.7.3" pyspark-shell' +) + +import pyspark + +myAccessKey = input() +mySecretKey = input() + +spark = ( + pyspark.sql.SparkSession.builder.master("local[*]") + .config("spark.hadoop.fs.s3a.access.key", myAccessKey) + .config("spark.hadoop.fs.s3a.secret.key", mySecretKey) + .getOrCreate() +) + +df = spark.read.parquet("s3://myBucket/myKey") +``` + +Using Spark context for Hadoop 2.6.0 + +```python +import os + +os.environ["PYSPARK_SUBMIT_ARGS"] = ( + "--packages com.amazonaws:aws-java-sdk:1.10.34,org.apache.hadoop:hadoop-aws:2.6.0 pyspark-shell" +) + +import pyspark + +sc = pyspark.SparkContext("local[*]") + +from pyspark.sql import SQLContext + +sqlContext = SQLContext(sc) + +hadoopConf = sc._jsc.hadoopConfiguration() +myAccessKey = input() +mySecretKey = input() +hadoopConf.set("fs.s3.impl", "org.apache.hadoop.fs.s3native.NativeS3FileSystem") +hadoopConf.set("fs.s3.awsAccessKeyId", myAccessKey) +hadoopConf.set("fs.s3.awsSecretAccessKey", mySecretKey) + +df = sqlContext.read.parquet("s3://myBucket/myKey") +``` + +Ref: + +### Using Local Spark JARs + +```{warning} +This recipe is not tested and might be broken. +``` + +```python +import os + +os.environ["PYSPARK_SUBMIT_ARGS"] = ( + "--jars /home/jovyan/spark-streaming-kafka-assembly_2.10-1.6.1.jar pyspark-shell" +) +import pyspark +from pyspark.streaming.kafka import KafkaUtils +from pyspark.streaming import StreamingContext + +sc = pyspark.SparkContext() +ssc = StreamingContext(sc, 1) +broker = "" +directKafkaStream = KafkaUtils.createDirectStream( + ssc, ["test1"], {"metadata.broker.list": broker} +) +directKafkaStream.pprint() +ssc.start() +``` + +Ref: + +### Using spark-packages.org + +```{warning} +This recipe is not tested and might be broken. +``` + +If you'd like to use packages from [spark-packages.org](https://spark-packages.org/), see +[https://gist.github.com/parente/c95fdaba5a9a066efaab](https://gist.github.com/parente/c95fdaba5a9a066efaab) +for an example of how to specify the package identifier in the environment before creating a +SparkContext. + +Ref: + +### Use jupyter/all-spark-notebooks with an existing Spark/YARN cluster + +```{warning} +This recipe is not tested and might be broken. +``` + +```dockerfile +FROM quay.io/jupyter/all-spark-notebook + +# Set env vars for pydoop +ENV HADOOP_HOME /usr/local/hadoop-2.7.3 +ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64 +ENV HADOOP_CONF_HOME /usr/local/hadoop-2.7.3/etc/hadoop +ENV HADOOP_CONF_DIR /usr/local/hadoop-2.7.3/etc/hadoop + +USER root +# Add proper open-jdk-8 not the jre only, needed for pydoop +RUN echo 'deb https://cdn-fastly.deb.debian.org/debian jessie-backports main' > /etc/apt/sources.list.d/jessie-backports.list && \ + apt-get update --yes && \ + apt-get install --yes --no-install-recommends -t jessie-backports openjdk-8-jdk && \ + rm /etc/apt/sources.list.d/jessie-backports.list && \ + apt-get clean && rm -rf /var/lib/apt/lists/* && \ +# Add Hadoop binaries + wget --progress=dot:giga https://mirrors.ukfast.co.uk/sites/ftp.apache.org/hadoop/common/hadoop-2.7.3/hadoop-2.7.3.tar.gz && \ + tar -xvf hadoop-2.7.3.tar.gz -C /usr/local && \ + chown -R "${NB_USER}:users" /usr/local/hadoop-2.7.3 && \ + rm -f hadoop-2.7.3.tar.gz && \ +# Install os dependencies required for pydoop, pyhive + apt-get update --yes && \ + apt-get install --yes --no-install-recommends build-essential python-dev libsasl2-dev && \ + apt-get clean && rm -rf /var/lib/apt/lists/* && \ +# Remove the example hadoop configs and replace +# with those for our cluster. +# Alternatively, this could be mounted as a volume + rm -f /usr/local/hadoop-2.7.3/etc/hadoop/* + +# Download this from ambari/cloudera manager and copy it here +COPY example-hadoop-conf/ /usr/local/hadoop-2.7.3/etc/hadoop/ + +# Spark-Submit doesn't work unless I set the following +RUN echo "spark.driver.extraJavaOptions -Dhdp.version=2.5.3.0-37" >> /usr/local/spark/conf/spark-defaults.conf && \ + echo "spark.yarn.am.extraJavaOptions -Dhdp.version=2.5.3.0-37" >> /usr/local/spark/conf/spark-defaults.conf && \ + echo "spark.master=yarn" >> /usr/local/spark/conf/spark-defaults.conf && \ + echo "spark.hadoop.yarn.timeline-service.enabled=false" >> /usr/local/spark/conf/spark-defaults.conf && \ + chown -R "${NB_USER}:users" /usr/local/spark/conf/spark-defaults.conf && \ + # Create an alternative HADOOP_CONF_HOME so we can mount as a volume and repoint + # using ENV var if needed + mkdir -p /etc/hadoop/conf/ && \ + chown "${NB_USER}":users /etc/hadoop/conf/ + +USER ${NB_UID} + +# Install useful jupyter extensions and python libraries like : +# - Dashboards +# - PyDoop +# - PyHive +RUN pip install --no-cache-dir 'jupyter_dashboards' 'faker' && \ + jupyter dashboards quick-setup --sys-prefix && \ + pip2 install --no-cache-dir 'pyhive' 'pydoop' 'thrift' 'sasl' 'thrift_sasl' 'faker' && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" + +USER root +# Ensure we overwrite the kernel config so that toree connects to cluster +RUN jupyter toree install --sys-prefix --spark_opts="\ + --master yarn \ + --deploy-mode client \ + --driver-memory 512m \ + --executor-memory 512m \ + --executor-cores 1 \ + --driver-java-options \ + -Dhdp.version=2.5.3.0-37 \ + --conf spark.hadoop.yarn.timeline-service.enabled=false \ +" +USER ${NB_UID} +``` + +Credit: [britishbadger](https://github.com/britishbadger) from [docker-stacks/issues/369](https://github.com/jupyter/docker-stacks/issues/369) + +## Run Server inside an already secured environment (i.e., with no token) + +The default security is very good. +There are use cases, encouraged by containers, where the jupyter container and the system it runs within lie inside the security boundary. +It is convenient to launch the server without a password or token in these use cases. +In this case, you should use the `start-notebook.py` script to launch the server with no token: + +For JupyterLab: + +```bash +docker run -it --rm \ + quay.io/jupyter/base-notebook \ + start-notebook.py --IdentityProvider.token='' +``` + +For Jupyter Notebook: + +```bash +docker run -it --rm \ + -e DOCKER_STACKS_JUPYTER_CMD=notebook \ + quay.io/jupyter/base-notebook \ + start-notebook.py --IdentityProvider.token='' +``` + +## Enable nbclassic-extension spellchecker for markdown (or any other nbclassic-extension) + +```{note} +This recipe only works for NBCassic with Jupyter Notebook < 7. +It is recommended to use [jupyterlab-spellchecker](https://github.com/jupyterlab-contrib/spellchecker) in modern environments. +``` + +```{literalinclude} recipe_code/spellcheck_notebook_v6.dockerfile +:language: docker +``` + +## Enable Delta Lake in Spark notebooks + +```{warning} +This recipe is not tested and might be broken. +``` + +Please note that the [Delta Lake](https://delta.io/) packages are only available for Spark version > `3.0`. +By adding the properties to `spark-defaults.conf`, the user no longer needs to enable Delta support in each notebook. + +```dockerfile +FROM quay.io/jupyter/pyspark-notebook + +RUN mamba install --yes 'delta-spark' && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" + +USER root + +RUN echo 'spark.sql.extensions io.delta.sql.DeltaSparkSessionExtension' >> "${SPARK_HOME}/conf/spark-defaults.conf" && \ + echo 'spark.sql.catalog.spark_catalog org.apache.spark.sql.delta.catalog.DeltaCatalog' >> "${SPARK_HOME}/conf/spark-defaults.conf" + +USER ${NB_UID} + +# Trigger download of delta lake files +RUN echo "from pyspark.sql import SparkSession" > /tmp/init-delta.py && \ + echo "from delta import *" >> /tmp/init-delta.py && \ + echo "spark = configure_spark_with_delta_pip(SparkSession.builder).getOrCreate()" >> /tmp/init-delta.py && \ + python /tmp/init-delta.py && \ + rm /tmp/init-delta.py +``` + +## Add Custom Fonts in Scipy notebook + +```{warning} +This recipe is not tested and might be broken. +``` + +The example below is a Dockerfile to load Source Han Sans with normal weight, usually used for the web. + +```dockerfile +FROM quay.io/jupyter/scipy-notebook + +RUN PYV=$(ls "${CONDA_DIR}/lib" | grep ^python) && \ + MPL_DATA="${CONDA_DIR}/lib/${PYV}/site-packages/matplotlib/mpl-data" && \ + wget --progress=dot:giga -P "${MPL_DATA}/fonts/ttf/" https://mirrors.cloud.tencent.com/adobe-fonts/source-han-sans/SubsetOTF/CN/SourceHanSansCN-Normal.otf && \ + sed -i 's/#font.family/font.family/g' "${MPL_DATA}/matplotlibrc" && \ + sed -i 's/#font.sans-serif:/font.sans-serif: Source Han Sans CN,/g' "${MPL_DATA}/matplotlibrc" && \ + sed -i 's/#axes.unicode_minus: True/axes.unicode_minus: False/g' "${MPL_DATA}/matplotlibrc" && \ + rm -rf "/home/${NB_USER}/.cache/matplotlib" && \ + python -c 'import matplotlib.font_manager;print("font loaded: ",("Source Han Sans CN" in [f.name for f in matplotlib.font_manager.fontManager.ttflist]))' +``` + +## Enable clipboard in pandas on Linux systems + +```{warning} +This recipe is not tested and might be broken. +``` + +```{admonition} Additional notes + This solution works on Linux host systems. + It is not required on Windows and won't work on macOS. +``` + +To enable the `pandas.read_clipboard()` functionality, you need to have `xclip` installed +(installed in `minimal-notebook` and all the inherited images) +and add these options when running `docker`: `-e DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix`, i.e.: + +```bash +docker run -it --rm \ + -e DISPLAY \ + -v /tmp/.X11-unix:/tmp/.X11-unix \ + quay.io/jupyter/minimal-notebook +``` + +## Add ijavascript kernel to container + +```{warning} +This recipe is not tested and might be broken. +``` + +The example below is a Dockerfile to install the [ijavascript kernel](https://github.com/n-riesco/ijavascript). + +```dockerfile +FROM quay.io/jupyter/scipy-notebook + +# install ijavascript +RUN npm install -g ijavascript +RUN ijsinstall +``` + +## Add Microsoft SQL Server ODBC driver + +The following recipe demonstrates how to add functionality to read from and write to an instance of Microsoft SQL server in your notebook. + +```{literalinclude} recipe_code/microsoft_odbc.dockerfile +:language: docker +``` + +You can now use `pyodbc` and `sqlalchemy` to interact with the database. + +Pre-built images are hosted in the [Realiserad/jupyter-docker-mssql](https://github.com/Realiserad/jupyter-docker-mssql) repository. + +## Add Oracle SQL Instant client, SQL\*Plus, and other tools (Version 21.x) + +```{note} +This recipe only works for x86_64 architecture. +``` + +The following recipe demonstrates how to add functionality to connect to an Oracle Database using [Oracle Instant Client](https://www.oracle.com/database/technologies/instant-client.html) +in your notebook. +This recipe installs version `21.11.0.0.0`. + +Nonetheless, go to the [Oracle Instant Client Download page](https://www.oracle.com/es/database/technologies/instant-client/linux-x86-64-downloads.html) for the complete list of versions available. +You may need to perform different steps for older versions; +they may be explained in the "Installation instructions" section of the Downloads page. + +```{literalinclude} recipe_code/oracledb.dockerfile +:language: docker +``` diff --git a/docs/using/running.md b/docs/using/running.md new file mode 100644 index 0000000..b652b92 --- /dev/null +++ b/docs/using/running.md @@ -0,0 +1,192 @@ +# Running a Container + +Using one of the Jupyter Docker Stacks requires two choices: + +1. Which Docker image you wish to use +2. How you wish to start Docker containers from that image + +This section provides details about the second. + +## Using the Docker CLI + +You can launch a local Docker container from the Jupyter Docker Stacks using the [Docker command-line interface](https://docs.docker.com/engine/reference/commandline/cli/). +There are numerous ways to configure containers using CLI. +The following are some common patterns. + +### Example 1 + +This command pulls the `jupyter/scipy-notebook` image tagged `2024-01-15` from Quay.io if it is not already present on the local host. +It then starts a container running Jupyter Server with the JupyterLab frontend and exposes the server on host port 8888. +The server logs appear in the terminal and include a URL to the server. + +```bash +docker run -it -p 8888:8888 quay.io/jupyter/scipy-notebook:2024-01-15 + +# Entered start.sh with args: jupyter lab + +# ... + +# To access the server, open this file in a browser: +# file:///home/jovyan/.local/share/jupyter/runtime/jpserver-7-open.html +# Or copy and paste one of these URLs: +# http://eca4aa01751c:8888/lab?token=d4ac9278f5f5388e88097a3a8ebbe9401be206cfa0b83099 +# http://127.0.0.1:8888/lab?token=d4ac9278f5f5388e88097a3a8ebbe9401be206cfa0b83099 +``` + +Pressing `Ctrl-C` twice shuts down the Server but leaves the container intact on disk for later restart or permanent deletion using commands like the following: + +```bash +# list containers +docker ps --all +# CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES +# eca4aa01751c quay.io/jupyter/scipy-notebook:2024-01-15 "tini -g -- start-no…" About a minute ago Exited (0) 5 seconds ago silly_panini + +# start the stopped container +docker start --attach -i eca4aa01751c +# Entered start.sh with args: jupyter lab +# ... + +# remove the stopped container +docker rm eca4aa01751c +# eca4aa01751c +``` + +### Example 2 + +This command pulls the `jupyter/r-notebook` image tagged `2024-01-15` from Quay.io if it is not already present on the local host. +It then starts a container running Server and exposes the server on host port 10000. +The server logs appear in the terminal and include a URL to the Server but with the internal container port (8888) instead of the correct host port (10000). + +```bash +docker run -it --rm -p 10000:8888 -v "${PWD}":/home/jovyan/work quay.io/jupyter/r-notebook:2024-01-15 +``` + +Pressing `Ctrl-C` twice shuts down the Server and immediately destroys the Docker container. +New files and changes in `~/work` in the container will be preserved. +Any other changes made in the container will be lost. + +```{note} +By default, [jupyter's root_dir](https://jupyter-server.readthedocs.io/en/latest/other/full-config.html) is `/home/jovyan`. +So, new notebooks will be saved there, unless you change the directory in the file browser. + +To change the default directory, you will need to specify `ServerApp.root_dir` by adding this line to the previous command: `start-notebook.py --ServerApp.root_dir=/home/jovyan/work`. +``` + +### Example 3 + +This command pulls the `jupyter/all-spark-notebook` image currently tagged `latest` from Quay.io if an image tagged `latest` is not already present on the local host. +It then starts a container named `notebook` running a JupyterLab server and exposes the server on a randomly selected port. + +```bash +docker run --detach -P --name notebook quay.io/jupyter/all-spark-notebook +``` + +where: + +- `--detach`: will run the container in detached mode + +You can also use the following docker commands to see the port and Jupyter Server token: + +```bash +# get the random host port assigned to the container port 8888 +docker port notebook 8888 +# 0.0.0.0:49153 +# :::49153 + +# get the notebook token from the logs +docker logs --tail 3 notebook + # Or copy and paste one of these URLs: + # http://878f1a9b4dfa:8888/lab?token=d336fa63c03f064ff15ce7b269cab95b2095786cf9ab2ba3 + # or http://127.0.0.1:8888/lab?token=d336fa63c03f064ff15ce7b269cab95b2095786cf9ab2ba3 +``` + +Together, the URL to visit on the host machine to access the server, in this case, is . + +The container runs in the background until stopped and/or removed by additional Docker commands: + +```bash +# stop the container +docker stop notebook +# notebook + +# remove the container permanently +docker rm notebook +# notebook +``` + +## Using the Podman CLI + +An alternative to using the Docker CLI is to use the Podman CLI. +Podman is mostly compatible with Docker. + +### Podman example + +If we use Podman instead of Docker in the situation given in _Example 2_, it will look like this: + +The example makes use of rootless Podman; in other words, the Podman command is run from a regular user account. +In a Bash shell, set the shell variables _uid_ and _gid_ to the UID and GID of the user _jovyan_ in the container. + +```bash +uid=1000 +gid=100 +``` + +Set the shell variables _subuidSize_ and _subgidSize_ to the number of subordinate UIDs and GIDs, respectively. + +```bash +subuidSize=$(( $(podman info --format "{{ range .Host.IDMappings.UIDMap }}+{{.Size }}{{end }}" ) - 1 )) +subgidSize=$(( $(podman info --format "{{ range .Host.IDMappings.GIDMap }}+{{.Size }}{{end }}" ) - 1 )) +``` + +This command pulls the `quay.io/jupyter/r-notebook` image tagged `2024-01-15` from Quay.io if it is not already present on the local host. +It then starts a container running a Jupyter Server with the JupyterLab frontend and exposes the server on host port 10000. +The server logs appear in the terminal and include a URL to the server but with the internal container port (8888) instead of the correct host port (10000). + +```bash +podman run -it --rm -p 10000:8888 \ + -v "${PWD}":/home/jovyan/work --user $uid:$gid \ + --uidmap $uid:0:1 --uidmap 0:1:$uid --uidmap $(($uid+1)):$(($uid+1)):$(($subuidSize-$uid)) \ + --gidmap $gid:0:1 --gidmap 0:1:$gid --gidmap $(($gid+1)):$(($gid+1)):$(($subgidSize-$gid)) \ + quay.io/jupyter/r-notebook:2024-01-15 +``` + +```{warning} +The `podman run` options `--uidmap` and `--gidmap` can be used to map the container user _jovyan_ to the regular user on the host when running rootless Podman. +The same Podman command should not be run with sudo (i.e. running rootful Podman) +because then the mapping would map the container user _jovyan_ to the root user on the host. +It's a good security practice to run programs with as few privileges as possible. +``` + +```{note} +The `podman run` command in the example above maps all subuids and subgids of the user into the container. +That works fine but is actually more than needed. +The `podman run` option `--userns=auto` will, for instance, not be possible to use as long as there are no unused subuids and subgids available. +The example could be improved by investigating more in detail which UIDs and GIDs need to be available in the container and then only map them. +``` + +Pressing `Ctrl-C` twice shuts down the Server and immediately destroys the Docker container. +New files and changes in `~/work` in the container will be preserved. +Any other changes made in the container will be lost. + +## Using Binder + +A [Binder](https://mybinder.org/) is a service that allows you to create and share custom computing environments for projects in version control. +You can use any of the Jupyter Docker Stacks images as a basis for a Binder-compatible Dockerfile. +See the +[docker-stacks example](https://mybinder.readthedocs.io/en/latest/examples/sample_repos.html#using-a-docker-image-from-the-jupyter-docker-stacks-repository) and +[Using a Dockerfile](https://mybinder.readthedocs.io/en/latest/tutorials/dockerfile.html) section in the +[Binder documentation](https://mybinder.readthedocs.io/en/latest/index.html) for instructions. + +## Using JupyterHub + +You can configure JupyterHub to launcher Docker containers from the Jupyter Docker Stacks images. +If you've been following the [Zero to JupyterHub with Kubernetes](https://z2jh.jupyter.org/en/latest/) guide, +see the [Use an existing Docker image](https://z2jh.jupyter.org/en/latest/jupyterhub/customizing/user-environment.html#choose-and-use-an-existing-docker-image) section for details. +If you have a custom JupyterHub deployment, see the [Picking or building a Docker image](https://jupyterhub-dockerspawner.readthedocs.io/en/latest/docker-image.html) +instructions for the [dockerspawner](https://github.com/jupyterhub/dockerspawner) instead. + +## Using Other Tools and Services + +You can use the Jupyter Docker Stacks with any Docker-compatible technology +(e.g., [Docker Compose](https://docs.docker.com/compose/), [docker-py](https://github.com/docker/docker-py), or your favorite cloud container service). +See the documentation of the tool, library, or service for details about how to reference, configure, and launch containers from these images. diff --git a/docs/using/selecting.md b/docs/using/selecting.md new file mode 100644 index 0000000..d44f456 --- /dev/null +++ b/docs/using/selecting.md @@ -0,0 +1,337 @@ +# Selecting an Image + +- [Core Stacks](#core-stacks) +- [Image Relationships](#image-relationships) +- [Community Stacks](#community-stacks) + +Using one of the Jupyter Docker Stacks requires two choices: + +1. Which Docker image you wish to use +2. How you wish to start Docker containers from that image + +This section provides details about the first. + +## Core Stacks + +The Jupyter team maintains a set of Docker image definitions in the GitHub repository. +The following sections describe these images, including their contents, relationships, and versioning strategy. + +### jupyter/docker-stacks-foundation + +[Source on GitHub](https://github.com/jupyter/docker-stacks/tree/main/images/docker-stacks-foundation) | +[Dockerfile commit history](https://github.com/jupyter/docker-stacks/commits/main/images/docker-stacks-foundation/Dockerfile) | +[Quay.io image tags](https://quay.io/repository/jupyter/docker-stacks-foundation?tab=tags) + +`jupyter/docker-stacks-foundation` is a small image supporting a majority of [options common across all core stacks](common.md). +It is the basis for all other stacks on which Jupyter-related applications can be built +(e.g., kernel-based containers, [nbclient](https://github.com/jupyter/nbclient) applications, etc.). +As such, it does not contain application-level software like JupyterLab, Jupyter Notebook, or JupyterHub. + +It contains: + +- Package managers + - [conda](https://github.com/conda/conda): "cross-platform, language-agnostic binary package manager". + - [mamba](https://github.com/mamba-org/mamba): "reimplementation of the conda package manager in C++". We use this package manager by default when installing packages. +- Unprivileged user `jovyan` (`uid=1000`, configurable, [see options in the common features section](./common.md) of this documentation) in group `users` (`gid=100`) + with ownership over the `/home/jovyan` and `/opt/conda` paths +- `tini` and a `start.sh` script as the container entry point - useful for running alternative commands in the container as applications are added (e.g. `ipython`, `jupyter kernelgateway`, `jupyter lab`) +- A `run-hooks.sh` script, which can source/run files in a given directory +- Options for a passwordless sudo +- Common system libraries like `bzip2`, `ca-certificates`, `locales` +- `wget` to download external files +- No preinstalled scientific computing packages + +### jupyter/base-notebook + +[Source on GitHub](https://github.com/jupyter/docker-stacks/tree/main/images/base-notebook) | +[Dockerfile commit history](https://github.com/jupyter/docker-stacks/commits/main/images/base-notebook/Dockerfile) | +[Quay.io image tags](https://quay.io/repository/jupyter/base-notebook?tab=tags) + +`jupyter/base-notebook` adds base Jupyter Applications like JupyterLab, Jupyter Notebook, JupyterHub, and NBClassic +and serves as the basis for all other stacks besides `jupyter/docker-stacks-foundation`. + +It contains: + +- Everything in `jupyter/docker-stacks-foundation` +- Minimally functional Server (e.g., no LaTeX support for saving notebooks as PDFs) +- `notebook`, `jupyterhub`, and `jupyterlab` packages +- A `start-notebook.py` script as the default command +- A `start-singleuser.py` script useful for launching containers in JupyterHub +- Options for a self-signed HTTPS certificate + +```{warning} +`jupyter/base-notebook` also contains `start-notebook.sh` and `start-singleuser.sh` files to maintain backward compatibility. +External config that explicitly refers to those files should instead +update to refer to `start-notebook.py` and `start-singleuser.py`. +The shim `.sh` files will be removed at some future date. +``` + +### jupyter/minimal-notebook + +[Source on GitHub](https://github.com/jupyter/docker-stacks/tree/main/images/minimal-notebook) | +[Dockerfile commit history](https://github.com/jupyter/docker-stacks/commits/main/images/minimal-notebook/Dockerfile) | +[Quay.io image tags](https://quay.io/repository/jupyter/minimal-notebook?tab=tags) + +`jupyter/minimal-notebook` adds command-line tools useful when working in Jupyter applications. + +It contains: + +- Everything in `jupyter/base-notebook` +- Common useful utilities like + [curl](https://curl.se), + [git](https://git-scm.com/), + [nano](https://www.nano-editor.org/) (actually `nano-tiny`), + [tzdata](https://www.iana.org/time-zones), + [unzip](https://code.launchpad.net/ubuntu/+source/unzip), + and [vi](https://www.vim.org) (actually `vim-tiny`), +- [TeX Live](https://www.tug.org/texlive/) for notebook document conversion + +### jupyter/r-notebook + +[Source on GitHub](https://github.com/jupyter/docker-stacks/tree/main/images/r-notebook) | +[Dockerfile commit history](https://github.com/jupyter/docker-stacks/commits/main/images/r-notebook/Dockerfile) | +[Quay.io image tags](https://quay.io/repository/jupyter/r-notebook?tab=tags) + +`jupyter/r-notebook` includes popular packages from the R ecosystem listed below: + +- Everything in `jupyter/minimal-notebook` and its ancestor images +- The [R](https://www.r-project.org/) interpreter and base environment +- [IRKernel](https://irkernel.github.io/) to support R code in Jupyter notebooks +- [tidyverse](https://www.tidyverse.org/) + packages from [conda-forge](https://conda-forge.org/feedstock-outputs/index.html) +- [caret](https://topepo.github.io/caret/index.html), + [crayon](https://cran.r-project.org/web/packages/crayon/index.html), + [devtools](https://cran.r-project.org/web/packages/devtools/index.html), + [forecast](https://cran.r-project.org/web/packages/forecast/index.html), + [hexbin](https://cran.r-project.org/web/packages/hexbin/index.html), + [htmltools](https://cran.r-project.org/web/packages/htmltools/index.html), + [htmlwidgets](https://www.htmlwidgets.org), + [nycflights13](https://cran.r-project.org/web/packages/nycflights13/index.html), + [randomforest](https://cran.r-project.org/web/packages/randomForest/index.html), + [rcurl](https://cran.r-project.org/web/packages/RCurl/index.html), + [rmarkdown](https://rmarkdown.rstudio.com), + [rodbc](https://cran.r-project.org/web/packages/RODBC/index.html), + [rsqlite](https://cran.r-project.org/web/packages/RSQLite/index.html), + [shiny](https://shiny.posit.co), + [tidymodels](https://www.tidymodels.org/), + [unixodbc](https://www.unixodbc.org) + packages from [conda-forge](https://conda-forge.org/feedstock-outputs/index.html) + +### jupyter/julia-notebook + +[Source on GitHub](https://github.com/jupyter/docker-stacks/tree/main/images/julia-notebook) | +[Dockerfile commit history](https://github.com/jupyter/docker-stacks/commits/main/images/julia-notebook/Dockerfile) | +[Quay.io image tags](https://quay.io/repository/jupyter/julia-notebook?tab=tags) + +`jupyter/julia-notebook` includes popular packages from the Julia ecosystem listed below: + +- Everything in `jupyter/minimal-notebook` and its ancestor images +- The [Julia](https://julialang.org/) compiler and base environment +- [IJulia](https://github.com/JuliaLang/IJulia.jl) to support Julia code in Jupyter notebook +- [Pluto.jl](https://plutojl.org/) reactive Julia notebook interface, made accessible with [jupyter-pluto-proxy](https://github.com/yuvipanda/jupyter-pluto-proxy) +- [HDF5](https://github.com/JuliaIO/HDF5.jl) package + +### jupyter/scipy-notebook + +[Source on GitHub](https://github.com/jupyter/docker-stacks/tree/main/images/scipy-notebook) | +[Dockerfile commit history](https://github.com/jupyter/docker-stacks/commits/main/images/scipy-notebook/Dockerfile) | +[Quay.io image tags](https://quay.io/repository/jupyter/scipy-notebook?tab=tags) + +`jupyter/scipy-notebook` includes popular packages from the scientific Python ecosystem. + +- Everything in `jupyter/minimal-notebook` and its ancestor images +- [altair](https://altair-viz.github.io), + [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/), + [bokeh](https://docs.bokeh.org/en/latest/), + [bottleneck](https://bottleneck.readthedocs.io/en/latest/), + [cloudpickle](https://github.com/cloudpipe/cloudpickle), + [conda-forge::blas=\*=openblas](https://www.openblas.net), + [cython](https://cython.org), + [dask](https://www.dask.org/), + [dill](https://pypi.org/project/dill/), + [h5py](https://www.h5py.org), + [jupyterlab-git](https://github.com/jupyterlab/jupyterlab-git), + [matplotlib-base](https://matplotlib.org/), + [numba](https://numba.pydata.org/), + [numexpr](https://github.com/pydata/numexpr), + [openpyxl](https://openpyxl.readthedocs.io/en/stable/), + [pandas](https://pandas.pydata.org/), + [patsy](https://patsy.readthedocs.io/en/latest/), + [protobuf](https://protobuf.dev/getting-started/pythontutorial/), + [pytables](https://www.pytables.org/), + [scikit-image](https://scikit-image.org), + [scikit-learn](https://scikit-learn.org/stable/), + [scipy](https://scipy.org/), + [seaborn](https://seaborn.pydata.org/), + [sqlalchemy](https://www.sqlalchemy.org/), + [statsmodel](https://www.statsmodels.org/stable/index.html), + [sympy](https://www.sympy.org/en/index.html), + [widgetsnbextension](https://ipywidgets.readthedocs.io/en/latest/user_install.html#installing-in-classic-jupyter-notebook), + [xlrd](https://www.python-excel.org) + packages +- [ipympl](https://github.com/matplotlib/ipympl) and + [ipywidgets](https://ipywidgets.readthedocs.io/en/stable/) + for interactive visualizations and plots in Python notebooks +- [Facets](https://github.com/PAIR-code/facets) + for visualizing machine learning datasets + +### jupyter/tensorflow-notebook + +[Source on GitHub](https://github.com/jupyter/docker-stacks/tree/main/images/tensorflow-notebook) | +[Dockerfile commit history](https://github.com/jupyter/docker-stacks/commits/main/images/tensorflow-notebook/Dockerfile) | +[Quay.io image tags](https://quay.io/repository/jupyter/tensorflow-notebook?tab=tags) + +`jupyter/tensorflow-notebook` includes popular Python deep learning libraries. + +- Everything in `jupyter/scipy-notebook` and its ancestor images +- [tensorflow](https://www.tensorflow.org/) machine learning library + +### jupyter/pytorch-notebook + +[Source on GitHub](https://github.com/jupyter/docker-stacks/tree/main/images/pytorch-notebook) | +[Dockerfile commit history](https://github.com/jupyter/docker-stacks/commits/main/images/pytorch-notebook/Dockerfile) | +[Quay.io image tags](https://quay.io/repository/jupyter/pytorch-notebook?tab=tags) + +`jupyter/pytorch-notebook` includes popular Python deep learning libraries. + +- Everything in `jupyter/scipy-notebook` and its ancestor images +- [pytorch](https://pytorch.org/) machine learning library + +### jupyter/datascience-notebook + +[Source on GitHub](https://github.com/jupyter/docker-stacks/tree/main/images/datascience-notebook) | +[Dockerfile commit history](https://github.com/jupyter/docker-stacks/commits/main/images/datascience-notebook/Dockerfile) | +[Quay.io image tags](https://quay.io/repository/jupyter/datascience-notebook?tab=tags) + +`jupyter/datascience-notebook` includes libraries for data analysis from the Python, R, and Julia communities. + +- Everything in the `jupyter/scipy-notebook`, `jupyter/r-notebook`, and `jupyter/julia-notebook` images and their ancestor + images +- [rpy2](https://rpy2.github.io/doc/latest/html/index.html) package + +### jupyter/pyspark-notebook + +[Source on GitHub](https://github.com/jupyter/docker-stacks/tree/main/images/pyspark-notebook) | +[Dockerfile commit history](https://github.com/jupyter/docker-stacks/commits/main/images/pyspark-notebook/Dockerfile) | +[Quay.io image tags](https://quay.io/repository/jupyter/pyspark-notebook?tab=tags) + +`jupyter/pyspark-notebook` includes Python support for Apache Spark. + +- Everything in `jupyter/scipy-notebook` and its ancestor images +- [Apache Spark](https://spark.apache.org/) with Hadoop binaries +- [grpcio-status](https://github.com/grpc/grpc/tree/master/src/python/grpcio_status) +- [grpcio](https://grpc.io/docs/languages/python/quickstart/) +- [pyarrow](https://arrow.apache.org/docs/python/) + +### jupyter/all-spark-notebook + +[Source on GitHub](https://github.com/jupyter/docker-stacks/tree/main/images/all-spark-notebook) | +[Dockerfile commit history](https://github.com/jupyter/docker-stacks/commits/main/images/all-spark-notebook/Dockerfile) | +[Quay.io image tags](https://quay.io/repository/jupyter/all-spark-notebook?tab=tags) + +`jupyter/all-spark-notebook` includes Python and R support for Apache Spark. + +- Everything in `jupyter/pyspark-notebook` and its ancestor images +- [IRKernel](https://irkernel.github.io/) to support R code in Jupyter notebooks +- [rcurl](https://cran.r-project.org/web/packages/RCurl/index.html), + [sparklyr](https://spark.rstudio.com), + [ggplot2](https://ggplot2.tidyverse.org) + packages + +### Image Relationships + +The following diagram depicts the build dependency tree of the core images. (i.e., the `FROM` statements in their Dockerfiles). +Any given image inherits the complete content of all ancestor images pointing to it. + +[![Image inheritance +diagram](../images/inherit.svg)](http://interactive.blockdiag.com/?compression=deflate&src=eJyFz8FOwzAMgOH7nsLqCQ55ADTBE3CDIxJyU5eZZnaUOJoK2rsv4YCUSlOvv784yRjULxPjF_weACaasQT7nFUs8w_BMzwda9fEJIbGKjVFTZaQ7Xioo6GMRax8yMPr-xtc2E51zmKQKBBmehzAvcBUb6HksqFfspu1yPS3rS2_N2vnxrrBiRqNqkvDXWjizMJnDB3atuay57h2qi_NDEaSNc1BL_99uEPjapr8ac_Vr2CtJJ52n5h2xXcJjDufiGuOmJZObVtzGILbyusNkda3zw) + +### Builds + +Every Monday and whenever a pull request is merged, images are rebuilt and pushed to [the public container registry](https://quay.io/organization/jupyter). + +### Versioning via image tags + +Whenever a docker image is pushed to the container registry, it is tagged with: + +- the `latest` tag +- a 12-character git commit SHA like `1ffe43816ba9` +- a date formatted like `2023-01-30` +- OS version like `ubuntu-22.04` +- a set of software version tags like `python-3.10.8` and `lab-3.5.3` + +```{warning} +- Tags before `2022-07-05` were sometimes incorrect. + Please, do not rely on them. +- Single-platform images have either `aarch64-` or `x86_64-` tag prefixes, for example, `quay.io/jupyter/base-notebook:aarch64-python-3.11.6` +``` + +For stability and reproducibility, you should either reference a date formatted +tag from a date before the current date (in UTC) or a git commit SHA older +than the latest git commit SHA in the default branch of the +[jupyter/docker-stacks GitHub repository](https://github.com/jupyter/docker-stacks/). + +## Community Stacks + +The core stacks are but a tiny sample of what's possible when combining Jupyter with other technologies. +We encourage members of the Jupyter community to create their own stacks based on the core images and link them below. +See the [contributing guide](../contributing/stacks.md) for information about how to create your own Jupyter Docker Stack. + +| Flavor | Binder | Description | +| -------------- | ----------------------- | --------------------------------------------------------------------------------------------------------- | +| [csharp] | [![bb]][csharp_b] | More than 200 Jupyter Notebooks with example **C#** code | +| [education] | [![bb]][education_b] | **`nbgrader`** and `RISE` on top of the `datascience-notebook` image | +| [ihaskell] | [![bb]][ihaskell_b] | Based on [**IHaskell**][ihaskell_project]. Includes popular packages and example notebooks | +| [java] | [![bb]][java_b] | [**IJava**][ijava] kernel on top of the `minimal-notebook` image | +| [sage] | [![bb]][sage_b] | [**sagemath**][sagemath] kernel on top of the `minimal-notebook` image | +| [cgspatial] | [![bb]][cgspatial_b] | Major **geospatial** Python & R libraries on top of the `datascience-notebook` image | +| [kotlin] | [![bb]][kotlin_b] | [**Kotlin** kernel for Jupyter/IPython][kotlin_kernel] on top of the `base-notebook` image | +| [transformers] | [![bb]][transformers_b] | [**Transformers**][transformers_lib] and NLP libraries such as `Tensorflow`, `Keras`, `Jax` and `PyTorch` | +| [scraper] | [![bb]][scraper_b] | **Scraper** tools (`selenium`, `chromedriver`, `beatifulsoup4`, `requests`) on `minimal-notebook` image | +| [almond] | [![bb]][almond_b] | Scala kernel for Jupyter using **Almond** on top of the `base-notebook` image | + +[bb]: https://static.mybinder.org/badge_logo.svg +[csharp]: https://github.com/tlinnet/csharp-notebook +[csharp_b]: https://mybinder.org/v2/gh/tlinnet/csharp-notebook/master +[education]: https://github.com/umsi-mads/education-notebook +[education_b]: https://mybinder.org/v2/gh/umsi-mads/education-notebook/master +[ihaskell]: https://github.com/IHaskell/ihaskell-notebook +[ihaskell_b]: https://mybinder.org/v2/gh/jamesdbrock/learn-you-a-haskell-notebook/master?urlpath=lab/tree/ihaskell_examples/ihaskell/IHaskell.ipynb +[ihaskell_project]: https://github.com/IHaskell/IHaskell +[java]: https://github.com/jbindinga/java-notebook +[java_b]: https://mybinder.org/v2/gh/jbindinga/java-notebook/master +[ijava]: https://github.com/SpencerPark/IJava +[sage]: https://github.com/sharpTrick/sage-notebook +[sage_b]: https://mybinder.org/v2/gh/sharpTrick/sage-notebook/master +[sagemath]: https://www.sagemath.org +[cgspatial]: https://github.com/SCiO-systems/cgspatial-notebook +[cgspatial_b]: https://mybinder.org/v2/gh/SCiO-systems/cgspatial-notebook/master +[kotlin]: https://github.com/knonm/kotlin-notebook +[kotlin_b]: https://mybinder.org/v2/gh/knonm/kotlin-notebook/main +[kotlin_kernel]: https://github.com/Kotlin/kotlin-jupyter +[transformers]: https://github.com/ToluClassics/transformers_notebook +[transformers_b]: https://mybinder.org/v2/gh/ToluClassics/transformers_notebook/main +[transformers_lib]: https://huggingface.co/docs/transformers/index +[scraper]: https://github.com/rgriffogoes/scraper-notebook +[scraper_b]: https://mybinder.org/v2/gh/rgriffogoes/scraper-notebook/main +[almond]: https://almond.sh +[almond_b]: https://mybinder.org/v2/gh/almond-sh/examples/master?urlpath=lab%2Ftree%2Fnotebooks%2Findex.ipynb + +### GPU-accelerated notebooks + +| Flavor | Description | +| ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| [GPU-Jupyter][gpu] | Power of your NVIDIA GPU and GPU calculations using Tensorflow and Pytorch in collaborative notebooks. This is done by generating a Dockerfile that consists of the **nvidia/cuda** base image, the well-maintained **docker-stacks** that is integrated as a submodule, and GPU-able libraries like **Tensorflow**, **Keras** and **PyTorch** on top of it. | +| [PRP-GPU][prp_gpu] | PRP (Pacific Research Platform) maintained [registry][prp_reg] for jupyter stack based on NVIDIA CUDA-enabled image. Added the PRP image with Pytorch and some other Python packages and GUI Desktop notebook based on . | +| [b-data][b-data] | GPU accelerated, multi-arch (`linux/amd64`, `linux/arm64/v8`) docker images for [R][r_cuda], [Python][python_cuda] and [Julia][julia_cuda]. Derived from nvidia/cuda `devel`-flavored images, including TensortRT and TensorRT plugin libraries. With [code-server][code-server] next to JupyterLab. Just Python – no [Conda][conda]/[Mamba][mamba]. | + +[gpu]: https://github.com/iot-salzburg/gpu-jupyter +[prp_gpu]: https://gitlab.nrp-nautilus.io/prp/jupyter-stack/-/tree/prp +[prp_reg]: https://gitlab.nrp-nautilus.io/prp/jupyter-stack/container_registry +[b-data]: https://github.com/b-data +[r_cuda]: https://github.com/b-data/jupyterlab-r-docker-stack/blob/main/CUDA.md +[python_cuda]: https://github.com/b-data/jupyterlab-python-docker-stack/blob/main/CUDA.md +[julia_cuda]: https://github.com/b-data/jupyterlab-julia-docker-stack/blob/main/CUDA.md +[code-server]: https://github.com/coder/code-server +[conda]: https://github.com/conda/conda +[mamba]: https://github.com/mamba-org/mamba diff --git a/docs/using/specifics.md b/docs/using/specifics.md new file mode 100644 index 0000000..c578e37 --- /dev/null +++ b/docs/using/specifics.md @@ -0,0 +1,307 @@ +# Image Specifics + +This page provides details about features specific to one or more images. + +## Apache Spark™ + +### Specific Docker Image Options + +- `-p 4040:4040` - The `jupyter/pyspark-notebook` and `jupyter/all-spark-notebook` images open + [SparkUI (Spark Monitoring and Instrumentation UI)](https://spark.apache.org/docs/latest/monitoring.html) at default port `4040`, + this option maps the `4040` port inside the docker container to the `4040` port on the host machine. + + ```{note} + Every new spark context that is created is put onto an incrementing port (i.e. 4040, 4041, 4042, etc.), and it might be necessary to open multiple ports. + ``` + + For example, `docker run --detach -p 8888:8888 -p 4040:4040 -p 4041:4041 quay.io/jupyter/pyspark-notebook`. + +#### IPython low-level output capture and forward + +Spark images (`pyspark-notebook` and `all-spark-notebook`) have been configured to disable IPython low-level output capture and forward system-wide. +The rationale behind this choice is that Spark logs can be verbose, especially at startup when Ivy is used to load additional jars. +Those logs are still available but only in the container's logs. + +If you want to make them appear in the notebook, you can overwrite the configuration in a user-level IPython kernel profile. +To do that, you have to uncomment the following line in your `~/.ipython/profile_default/ipython_kernel_config.py` and restart the kernel. + +```python +c.IPKernelApp.capture_fd_output = True +``` + +If you have no IPython profile, you can initiate a fresh one by running the following command. + +```bash +ipython profile create +# [ProfileCreate] Generating default config file: '/home/jovyan/.ipython/profile_default/ipython_config.py' +# [ProfileCreate] Generating default config file: '/home/jovyan/.ipython/profile_default/ipython_kernel_config.py' +``` + +### Build an Image with a Different Version of Spark + +You can build a `pyspark-notebook` image with a different `Spark` version by overriding the default value of the following arguments at build time. +`all-spark-notebook` is inherited from `pyspark-notebook`, so you have to first build `pyspark-notebook` and then `all-spark-notebook` to get the same version in `all-spark-notebook`. + +- Spark distribution is defined by the combination of Spark, Hadoop, and Scala versions, + see [Download Apache Spark](https://spark.apache.org/downloads.html) and the [archive repo](https://archive.apache.org/dist/spark/) for more information. + + - `openjdk_version`: The version of the OpenJDK (JRE headless) distribution (`17` by default). + - This version needs to match the version supported by the Spark distribution used above. + - See [Spark Overview](https://spark.apache.org/docs/latest/#downloading) and [Ubuntu packages](https://packages.ubuntu.com/search?keywords=openjdk). + - `spark_version` (optional): The Spark version to install, for example `3.5.0`. + If not specified (this is the default), latest stable Spark will be installed. + - `hadoop_version`: The Hadoop version (`3` by default). + Note, that _Spark < 3.3_ require to specify `major.minor` Hadoop version (i.e. `3.2`). + - `scala_version` (optional): The Scala version, for example `2.13` (not specified by default). + Starting with _Spark >= 3.2_, the distribution file might contain the Scala version. + - `spark_download_url`: URL to use for Spark downloads. + You may need to use url if you want to download old Spark versions. + +For example, here is how to build a `pyspark-notebook` image with Spark `3.2.0`, Hadoop `3.2`, and OpenJDK `11`. + +```{warning} +This recipe is not tested and might be broken. +``` + +```bash +# From the root of the project +# Build the image with different arguments +docker build --rm --force-rm \ + -t my-pyspark-notebook ./images/pyspark-notebook \ + --build-arg openjdk_version=11 \ + --build-arg spark_version=3.2.0 \ + --build-arg hadoop_version=3.2 \ + --build-arg spark_download_url="https://archive.apache.org/dist/spark/" + +# Check the newly built image +docker run -it --rm my-pyspark-notebook pyspark --version + +# Welcome to +# ____ __ +# / __/__ ___ _____/ /__ +# _\ \/ _ \/ _ `/ __/ '_/ +# /___/ .__/\_,_/_/ /_/\_\ version 3.2.0 +# /_/ + +# Using Scala version 2.12.15, OpenJDK 64-Bit Server VM, 11.0.21 +# Branch HEAD +# Compiled by user ubuntu on 2021-10-06T12:46:30Z +# Revision 5d45a415f3a29898d92380380cfd82bfc7f579ea +# Url https://github.com/apache/spark +# Type --help for more information. +``` + +### Usage Examples + +The `jupyter/pyspark-notebook` and `jupyter/all-spark-notebook` images support the use of [Apache Spark](https://spark.apache.org/) in Python and R notebooks. +The following sections provide some examples of how to get started using them. + +#### Using Spark Local Mode + +Spark **local mode** is useful for experimentation on small data when you do not have a Spark cluster available. + +```{warning} +In these examples, Spark spawns all the main execution components in the same single JVM. +You can read additional info about local mode [here](https://books.japila.pl/apache-spark-internals/local/). +If you want to use all the CPU, one of the simplest ways is to set up a [Spark Standalone Cluster](https://spark.apache.org/docs/latest/spark-standalone.html). +``` + +##### Local Mode in Python + +In a Python notebook. + +```python +from pyspark.sql import SparkSession + +# Spark session & context +spark = SparkSession.builder.master("local").getOrCreate() +sc = spark.sparkContext + +# Sum of the first 100 whole numbers +rdd = sc.parallelize(range(100 + 1)) +rdd.sum() +# 5050 +``` + +##### Local Mode in R + +In an R notebook with [SparkR][sparkr]. + +```R +library(SparkR) + +# Spark session & context +sc <- sparkR.session("local") + +# Sum of the first 100 whole numbers +sdf <- createDataFrame(list(1:100)) +dapplyCollect(sdf, + function(x) + { x <- sum(x)} + ) +# 5050 +``` + +In an R notebook with [sparklyr][sparklyr]. + +```R +library(sparklyr) + +# Spark configuration +conf <- spark_config() +# Set the catalog implementation in-memory +conf$spark.sql.catalogImplementation <- "in-memory" + +# Spark session & context +sc <- spark_connect(master = "local", config = conf) + +# Sum of the first 100 whole numbers +sdf_len(sc, 100, repartition = 1) %>% + spark_apply(function(e) sum(e)) +# 5050 +``` + +#### Connecting to a Spark Cluster in Standalone Mode + +Connection to Spark Cluster on **[Standalone Mode](https://spark.apache.org/docs/latest/spark-standalone.html)** requires the following set of steps: + +0. Verify that the docker image (check the Dockerfile) and the Spark Cluster, which is being + deployed, run the same version of Spark. +1. [Deploy Spark in Standalone Mode](https://spark.apache.org/docs/latest/spark-standalone.html). +2. Run the Docker container with `--net=host` in a location that is network-addressable by all of + your Spark workers. + (This is a [Spark networking requirement](https://spark.apache.org/docs/latest/cluster-overview.html#components).) + + ```{note} + When using `--net=host`, you must also use the flags `--pid=host -e TINI_SUBREAPER=true`. See for details._ + ``` + +**Note**: In the following examples, we are using the Spark master URL `spark://master:7077` which shall be replaced by the URL of the Spark master. + +##### Standalone Mode in Python + +The **same Python version** needs to be used on the notebook (where the driver is located) and on the Spark workers. +The Python version used on the driver and worker side can be adjusted by setting the environment variables `PYSPARK_PYTHON` and/or `PYSPARK_DRIVER_PYTHON`, +see [Spark Configuration][spark-conf] for more information. + +```python +from pyspark.sql import SparkSession + +# Spark session & context +spark = SparkSession.builder.master("spark://master:7077").getOrCreate() +sc = spark.sparkContext + +# Sum of the first 100 whole numbers +rdd = sc.parallelize(range(100 + 1)) +rdd.sum() +# 5050 +``` + +##### Standalone Mode in R + +In an R notebook with [SparkR][sparkr]. + +```R +library(SparkR) + +# Spark session & context +sc <- sparkR.session("spark://master:7077") + +# Sum of the first 100 whole numbers +sdf <- createDataFrame(list(1:100)) +dapplyCollect(sdf, + function(x) + { x <- sum(x)} + ) +# 5050 +``` + +In an R notebook with [sparklyr][sparklyr]. + +```R +library(sparklyr) + +# Spark session & context +# Spark configuration +conf <- spark_config() +# Set the catalog implementation in-memory +conf$spark.sql.catalogImplementation <- "in-memory" +sc <- spark_connect(master = "spark://master:7077", config = conf) + +# Sum of the first 100 whole numbers +sdf_len(sc, 100, repartition = 1) %>% + spark_apply(function(e) sum(e)) +# 5050 +``` + +### Define Spark Dependencies + +```{note} +This example is given for [Elasticsearch](https://www.elastic.co/guide/en/elasticsearch/hadoop/current/install.html). +``` + +Spark dependencies can be declared thanks to the `spark.jars.packages` property +(see [Spark Configuration](https://spark.apache.org/docs/latest/configuration.html#runtime-environment) for more information). + +They can be defined as a comma-separated list of Maven coordinates at the creation of the Spark session. + +```python +from pyspark.sql import SparkSession + +spark = ( + SparkSession.builder.appName("elasticsearch") + .config( + "spark.jars.packages", "org.elasticsearch:elasticsearch-spark-30_2.12:7.13.0" + ) + .getOrCreate() +) +``` + +Dependencies can also be defined in the `spark-defaults.conf`. +However, it has to be done by `root`, so it should only be considered to build custom images. + +```dockerfile +USER root +RUN echo "spark.jars.packages org.elasticsearch:elasticsearch-spark-30_2.12:7.13.0" >> "${SPARK_HOME}/conf/spark-defaults.conf" +USER ${NB_UID} +``` + +Jars will be downloaded dynamically at the creation of the Spark session and stored by default in `${HOME}/.ivy2/jars` (can be changed by setting `spark.jars.ivy`). + +## Tensorflow + +The `jupyter/tensorflow-notebook` image supports the use of +[Tensorflow](https://www.tensorflow.org/) in a single machine or distributed mode. + +### Single Machine Mode + +```python +import tensorflow as tf + +hello = tf.Variable("Hello World!") + +sess = tf.Session() +init = tf.global_variables_initializer() + +sess.run(init) +sess.run(hello) +``` + +### Distributed Mode + +```python +import tensorflow as tf + +hello = tf.Variable("Hello Distributed World!") + +server = tf.train.Server.create_local_server() +sess = tf.Session(server.target) +init = tf.global_variables_initializer() + +sess.run(init) +sess.run(hello) +``` + +[sparkr]: https://spark.apache.org/docs/latest/sparkr.html +[sparklyr]: https://spark.rstudio.com/ +[spark-conf]: https://spark.apache.org/docs/latest/configuration.html diff --git a/docs/using/troubleshooting.md b/docs/using/troubleshooting.md new file mode 100644 index 0000000..d9497ed --- /dev/null +++ b/docs/using/troubleshooting.md @@ -0,0 +1,342 @@ +# Troubleshooting Common Problems + +When troubleshooting, you may see unexpected behaviors or receive an error message. +This section provides advice on how to identify and fix some of the most commonly encountered issues. + +Most of the `docker run` flags used in this document are explained in detail in the +[Common Features, Docker Options section](common.md#docker-options) of the documentation. + +## Permission denied when mounting volumes + +If you are running a Docker container while mounting a local volume or host directory using the `-v` flag like so: + +```bash +docker run -it --rm \ + -p 8888:8888 \ + -v : \ + quay.io/jupyter/minimal-notebook:latest +``` + +you might face permissions issues when trying to access the mounted volume: + +```bash +# assuming we mounted the volume in /home/jovyan/stagingarea +# root is the owner of the mounted volume +ls -ld ~/stagingarea/ +# drwxr-xr-x 2 root root 4096 Feb 1 12:55 stagingarea/ + +touch stagingarea/kale.txt +# touch: cannot touch 'stagingarea/kale.txt': Permission denied +``` + +In this case, the user of the container (`jovyan`) and the owner of the mounted volume (`root`) +have different permission levels and ownership over the container's directories and mounts. +The following sections cover a few of these scenarios and how to fix them. + +**Some things to try:** + +1. **Change ownership of the volume mount** + + You can change the ownership of the volume mount using the `chown` command. + In the case of the docker-stacks images, you can set the `CHOWN_EXTRA` and `CHOWN_EXTRA_OPTS` environment variables. + + For example, to change the ownership of the volume mount to the `jovyan` user (non-privileged default user in the Docker images): + + ```bash + # running in detached mode - can also be run in interactive mode + docker run --detach \ + -v : \ + -p 8888:8888 \ + --user root \ + -e CHOWN_EXTRA="" \ + -e CHOWN_EXTRA_OPTS="-R" \ + quay.io/jupyter/minimal-notebook + ``` + + where: + + - `CHOWN_EXTRA=,`: will change the ownership and group of the specified container directory (non-recursive by default). + You need to provide full paths starting with `/`. + - `CHOWN_EXTRA_OPTS="-R"`: will recursively change the ownership and group of the directory specified in `CHOWN_EXTRA`. + - `--user root`: you **must** run the container with the root user to change ownership at runtime. + + Now accessing the mount should work as expected: + + ```bash + # assuming we mounted the volume in /home/jovyan/stagingarea + ls -ld ~/stagingarea + # drwxr-xr-x 2 jovyan users 4096 Feb 1 12:55 stagingarea/ + + touch stagingarea/kale.txt + # jovyan is now the owner of /home/jovyan/stagingarea + # ls -la ~/stagingarea/ + # -rw-r--r-- 1 jovyan users 0 Feb 1 14:41 kale.txt + ``` + + ```{admonition} Additional notes + - If you are mounting your volume inside the `/home/` directory, you can use the `-e CHOWN_HOME=yes` and `CHOWN_HOME_OPTS="-R"` flags + instead of the `-e CHOWN_EXTRA` and `-e CHOWN_EXTRA_OPTS` in the example above. + - This solution should work in most cases where you have created a docker volume + (i.e. using the [`docker volume create --name `command](https://docs.docker.com/storage/volumes/#create-and-manage-volumes)) and mounted it using the `-v` flag in `docker run`. + ``` + +2. **Matching the container's UID/GID with the host's** + + Docker handles mounting host directories differently from mounting volumes, even though the syntax is essentially the same (i.e. `-v`). + + When you initialize a Docker container using the `-v`flag, the host directories are bind-mounted directly into the container. + Therefore, the permissions and ownership are copied over and will be **the same** as the ones in your local host + (including user ids) which may result in permissions errors when trying to access directories or create/modify files inside. + + Suppose your local user has a `UID` and `GID` of `1234` and `5678`, respectively. + To fix the UID discrepancies between your local directories and the container's directories, + you can run the container with an explicit `NB_UID` and `NB_GID` to match that of the local user: + + ```bash + docker run -it --rm \ + --user root \ + -p 8888:8888 \ + -e NB_UID=1234 \ + -e NB_GID=5678 \ + -v "${PWD}"/test:/home/jovyan/work \ + quay.io/jupyter/minimal-notebook:latest + + # you should see an output similar to this + # Update jovyan's UID:GID to 1234:5678 + # Running as jovyan: bash + ``` + + where: + + - `NB_IUD` and `NB_GID` should match the local user's UID and GID. + - You **must** use `--user root` to ensure that the `UID` and `GID` are updated at runtime. + +````{admonition} Additional notes +- The caveat with this approach is that since these changes are applied at runtime, + you will need to re-run the same command with the appropriate flags and environment variables + if you need to recreate the container (i.e. after removing/destroying it). + - If you pass a numeric UID, it **must** be in the range of 0-2147483647 + - This approach only updates the UID and GID of the **existing `jovyan` user** instead of creating a new user. + From the above example: + ```bash + id + # uid=1234(jovyan) gid=5678(jovyan) groups=5678(jovyan),100(users) + ``` +```` + +## Permission issues after changing the UID/GID and USER in the container + +If you have also **created a new user**, you might be experiencing any of the following issues: + +- the `root` user is the owner of `/home` or a mounted volume +- when starting the container, you get an error such as `Failed to change ownership of the home directory.` +- getting permission denied when trying to `conda install` packages + +**Some things to try:** + +1. **Ensure the new user has ownership of `/home` and volume mounts** + + For example, say you want to create a user `callisto` with a `GID` and `UID` of `1234`. + You will have to add the following flags to the docker run command: + + ```bash + docker run -it --rm \ + -p 8888:8888 \ + --user root \ + -e NB_USER=callisto \ + -e NB_UID=1234 \ + -e NB_GID=1234 \ + -e CHOWN_HOME=yes \ + -e CHOWN_HOME_OPTS="-R" \ + -w "/home/callisto" \ + -v "${PWD}"/test:/home/callisto/work \ + quay.io/jupyter/minimal-notebook + + # Updated the jovyan user: + # - username: jovyan -> callisto + # - home dir: /home/jovyan -> /home/callisto + # Update callisto UID:GID to 1234:1234 + # Attempting to copy /home/jovyan to /home/callisto... + # Success! + # Ensuring /home/callisto is owned by 1234:1234 + # Running as callisto: bash + ``` + + where: + + - `-e NB_USER=callisto`: will create a new user `callisto` and automatically add it to the `users` group (does not delete jovyan) + - `-e NB_UID=1234` and `-e NB_GID=1234`: will set the `UID` and `GID` of the new user (`callisto`) to `1234` + - `-e CHOWN_HOME_OPTS="-R"` and `-e CHOWN_HOME=yes`: ensure that the new user is the owner of the `/home` directory and subdirectories + (setting `CHOWN_HOME_OPTS="-R` will ensure this change is applied recursively) + - `-w "/home/callisto"` sets the working directory to be the new user's home + + ```{admonition} Additional notes + In the example above, the `-v` flag is used to mount the local volume onto the new user's `/home` directory. + + However, if you are mounting a volume elsewhere, + you also need to use the `-e CHOWN_EXTRA=` flag to avoid any permission issues + (see the section [Permission denied when mounting volumes](#permission-denied-when-mounting-volumes) on this page). + ``` + +2. **Dynamically assign the user ID and GID** + + The above case ensures that the `/home` directory is owned by a newly created user with a specific `UID` and `GID`, + but if you want to assign the `UID` and `GID` of the new user dynamically, + you can make the following adjustments: + + ```bash + docker run -it --rm \ + -p 8888:8888 \ + --user root \ + -e NB_USER=callisto \ + -e NB_UID="$(id -u)" \ + -e NB_GID="$(id -g)" \ + -e CHOWN_HOME=yes \ + -e CHOWN_HOME_OPTS="-R" \ + -w "/home/callisto" \ + -v "${PWD}"/test:/home/callisto/work \ + quay.io/jupyter/minimal-notebook + ``` + + where: + + - `"$(id -u)" and "$(id -g)"` will dynamically assign the `UID` and `GID` of the user executing the `docker run` command to the new user (`callisto`) + +## Additional tips and troubleshooting commands for permission-related errors + +- Pass absolute paths to the `-v` flag: + + ```bash + -v "${PWD}"/:/home/jovyan/work + ``` + + This example uses the syntax `${PWD}`, which is replaced with the full path to the current directory at runtime. + The destination path should also be an absolute path starting with a `/` such as `/home/jovyan/work`. + +- You might want to consider using the Docker native `--user ` and `--group-add users` flags instead of `-e NB_UID` and `-e NB_GID`: + + ```bash + # note this will use the same UID from + # the user calling the command, thus matching the local host + + docker run -it --rm \ + -p 8888:8888 \ + --user "$(id -u)" --group-add users \ + -v :/home/jovyan/work quay.io/jupyter/datascience-notebook + ``` + + This command will launch the container with a specific user UID and add that user to the `users` group + to modify the files in the default `/home` and `/opt/conda` directories. + Further avoiding issues when trying to `conda install` additional packages. + +- Use `docker inspect ` and look for the [`Mounts` section](https://docs.docker.com/storage/volumes/#start-a-container-with-a-volume) + to verify that the volume was created and mounted accordingly: + + ```json + { + "Mounts": [ + { + "Type": "volume", + "Name": "my-vol", + "Source": "/var/lib/docker/volumes/stagingarea/_data", + "Destination": "/home/jovyan/stagingarea", + "Driver": "local", + "Mode": "z", + "RW": true, + "Propagation": "" + } + ] + } + ``` + +## Problems installing conda packages from specific channels + +By default, the docker-stacks images have the conda channels priority set to `strict`. +This may cause problems when trying to install packages from a channel with lower priority. + +```bash +conda config --show | grep priority +# channel_priority: strict + +# to see its meaning +conda config --describe channel_priority + +# checking the current channels +conda config --show default_channels +# default_channels: +# - https://repo.anaconda.com/pkgs/main +# - https://repo.anaconda.com/pkgs/r +``` + +**Installing packages from alternative channels:** + +You can install packages from other conda channels (e.g. `bioconda`) by disabling the `channel_priority` setting: + +```bash +# install by disabling channel priority at еру command level +conda install --no-channel-priority -c bioconda bioconductor-geoquery +``` + +Additional details are provided in the [Using Alternative Channels](../using/common.md#using-alternative-channels) section of the [Common Features](common.md) page. + +## Tokens are being rejected + +If you are a regular user of VSCode and the Jupyter extension, +you might experience either of these issues when using any of the docker-stacks images: + +- when clicking on the URL displayed on your command line logs, you face a "This site cannot be reached" page on your web browser +- using the produced token and/or URL results in an "Invalid credentials" error on the Jupyter "Token authentication is enabled" page + + ```bash + # example log output from the docker run command + + # [...] + # Or copy and paste one of these URLs: + # http://3d4cf3809e3f:8888/?token=996426e890f8dc22fa6835a44442b6026cba02ee61fee6a2 + # or http://127.0.0.1:8888/?token=996426e890f8dc22fa6835a44442b6026cba02ee61fee6a2 + ``` + +**Some things to try:** + +1. **Find lingering Jupyter processes in the background** + + The first thing you want to try is to check that no other Jupyter processes are running in the background: + + ```bash + ps aux | grep jupyter + ``` + + If there are existing processes running, you can kill them with: + + ```bash + # example output from the above command + # my-user 3412 ... --daemon-module=vscode_datascience_helpers.jupyter_daemon + + # using the pid from the above log + kill 3412 + ``` + +2. **Turn off Jupyter auto-start in VSCode** + + Alternatively - you might want to ensure that the `Jupyter: Disable Jupyter Auto Start` setting is turned on to avoid this issue in the future. + + You can achieve this from the `Settings > Jupyter` menu in VScode: + + ![VSCode Settings UI - Jupyter: Disable Jupyter Auto Start checkbox checked](../_static/using/troubleshooting/vscode-jupyter-settings.png) + +3. **Route container to unused local port** + + Instead of mapping Docker port `8888` to local port `8888`, map to another unused local port. + You can see an example of mapping to local port `8001`: + + ```bash + docker run -it --rm -p 8001:8888 quay.io/jupyter/datascience-notebook + ``` + + When the terminal provides the link to access Jupyter: , + change the default port value of `8888` in the URL to the port value mapped with the `docker run` command. + + In this example, we use 8001, so the edited link would be: . + + Note: Port mapping for Jupyter has other applications outside of Docker. + For example, it can be used to allow multiple Jupyter instances when using SSH to control cloud devices. diff --git a/examples/README.md b/examples/README.md new file mode 100644 index 0000000..7bb53eb --- /dev/null +++ b/examples/README.md @@ -0,0 +1,4 @@ +# Examples + +These examples are not tested and might not work. +Please, send PRs if you start using these examples and see some issues. diff --git a/examples/docker-compose/README.md b/examples/docker-compose/README.md new file mode 100644 index 0000000..d2c2e3e --- /dev/null +++ b/examples/docker-compose/README.md @@ -0,0 +1,176 @@ +# Docker Compose example + +This example demonstrate how to deploy docker-stack notebook containers to any Docker Machine-controlled host using Docker Compose. + +## Prerequisites + +- [Docker Engine](https://docs.docker.com/engine/) 1.10.0+ +- [Docker Machine](https://docs.docker.com/machine/) 0.6.0+ +- [Docker Compose](https://docs.docker.com/compose/) 1.6.0+ + +See the [installation instructions](https://docs.docker.com/engine/installation/) for your environment. + +## Quickstart + +Build and run a `jupyter/minimal-notebook` container on a VirtualBox VM on local desktop. + +```bash +# create a Docker Machine-controlled VirtualBox VM +bin/vbox.sh mymachine + +# activate the docker machine +eval "$(docker-machine env mymachine)" + +# build the notebook image on the machine +notebook/build.sh + +# bring up the notebook container +notebook/up.sh +``` + +To stop and remove the container: + +```bash +notebook/down.sh +``` + +## FAQ + +### How do I specify which docker-stack notebook image to deploy? + +You can customize the docker-stack notebook image to deploy by modifying the `notebook/Dockerfile`. +For example, you can build and deploy a `jupyter/all-spark-notebook` by modifying the Dockerfile like so: + +```dockerfile +FROM quay.io/jupyter/all-spark-notebook +# Your RUN commands and so on +``` + +Once you modify the Dockerfile, don't forget to rebuild the image. + +```bash +# activate the docker machine +eval "$(docker-machine env mymachine)" + +notebook/build.sh +``` + +### Can I run multiple notebook containers on the same VM? + +Yes. Set environment variables to specify unique names and ports when running the `up.sh` command. + +```bash +NAME=my-notebook PORT=9000 notebook/up.sh +NAME=your-notebook PORT=9001 notebook/up.sh +``` + +To stop and remove the containers: + +```bash +NAME=my-notebook notebook/down.sh +NAME=your-notebook notebook/down.sh +``` + +### Where are my notebooks stored? + +The `up.sh` creates a Docker volume named after the notebook container with a `-work` suffix, e.g., `my-notebook-work`. + +### Can multiple notebook containers share the same notebook volume? + +Yes. Set the `WORK_VOLUME` environment variable to the same value for each notebook. + +```bash +NAME=my-notebook PORT=9000 WORK_VOLUME=our-work notebook/up.sh +NAME=your-notebook PORT=9001 WORK_VOLUME=our-work notebook/up.sh +``` + +### How do I run over HTTPS? + +To run the Jupyter Server with a self-signed certificate, pass the `--secure` option to the `up.sh` script. +You must also provide a password, which will be used to secure the Jupyter Server. +You can specify the password by setting the `PASSWORD` environment variable, or by passing it to the `up.sh` script. + +```bash +PASSWORD=a_secret notebook/up.sh --secure + +# or +notebook/up.sh --secure --password a_secret +``` + +### Can I use Let's Encrypt certificate chains? + +Sure. If you want to secure access to publicly addressable notebook containers, you can generate a free certificate using the [Let's Encrypt](https://letsencrypt.org) service. + +This example includes the `bin/letsencrypt.sh` script, which runs the `letsencrypt` client to create a full-chain certificate and private key, and stores them in a Docker volume. + +```{note} +The script hard codes several `letsencrypt` options, one of which automatically agrees to the Let's Encrypt Terms of Service. +``` + +The following command will create a certificate chain and store it in a Docker volume named `mydomain-secrets`. + +```bash +FQDN=host.mydomain.com EMAIL=myemail@somewhere.com \ + SECRETS_VOLUME=mydomain-secrets \ + bin/letsencrypt.sh +``` + +Now run `up.sh` with the `--letsencrypt` option. +You must also provide the name of the secrets volume and a password. + +```bash +PASSWORD=a_secret SECRETS_VOLUME=mydomain-secrets notebook/up.sh --letsencrypt + +# or +notebook/up.sh --letsencrypt --password a_secret --secrets mydomain-secrets +``` + +Be aware that Let's Encrypt has a pretty [low rate limit per domain](https://community.letsencrypt.org/t/public-beta-rate-limits/4772/3) at the moment. +You can avoid exhausting your limit by testing against the Let's Encrypt staging servers. +To hit their staging servers, set the environment variable `CERT_SERVER=--staging`. + +```bash +FQDN=host.mydomain.com EMAIL=myemail@somewhere.com \ + CERT_SERVER=--staging \ + bin/letsencrypt.sh +``` + +Also, be aware that Let's Encrypt certificates are short-lived (90 days). +If you need them for a longer period of time, you'll need to manually set up a cron job to run the renewal steps. +(You can reuse the command above.) + +### Can I deploy to any Docker Machine host? + +Yes, you should be able to deploy to any Docker Machine-controlled host. +To make it easier to get up and running, this example includes scripts to provision Docker Machines to VirtualBox and IBM SoftLayer, but more scripts are welcome! + +To create a Docker machine using a VirtualBox VM on local desktop: + +```bash +bin/vbox.sh mymachine +``` + +To create a Docker machine using a virtual device on IBM SoftLayer: + +```bash +export SOFTLAYER_USER=my_softlayer_username +export SOFTLAYER_API_KEY=my_softlayer_api_key +export SOFTLAYER_DOMAIN=my.domain + +# Create virtual device +bin/softlayer.sh myhost + +# Add DNS entry (SoftLayer DNS zone must exist for SOFTLAYER_DOMAIN) +bin/sl-dns.sh myhost +``` + +## Troubleshooting + +### Unable to connect to VirtualBox VM on Mac OS X when using Cisco VPN client + +The Cisco VPN client blocks access to IP addresses that it does not know about, and may block access to a new VM if it is created while the Cisco VPN client is running. + +1. Stop Cisco VPN client. (It does not allow modifications to route table). +2. Run `ifconfig` to list `vboxnet` virtual network devices. +3. Run `sudo route -nv add -net 192.168.99 -interface vboxnetX`, where X is the number of the virtual device assigned to the VirtualBox VM. +4. Start Cisco VPN client. diff --git a/examples/docker-compose/bin/letsencrypt.sh b/examples/docker-compose/bin/letsencrypt.sh new file mode 100755 index 0000000..ee97630 --- /dev/null +++ b/examples/docker-compose/bin/letsencrypt.sh @@ -0,0 +1,48 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +# Use https://letsencrypt.org to create a certificate for a single domain +# and store it in a Docker volume. + +set -e + +# Get domain and email from environment +[ -z "${FQDN}" ] && \ + echo "ERROR: Must set FQDN environment variable" && \ + exit 1 + +[ -z "${EMAIL}" ] && \ + echo "ERROR: Must set EMAIL environment variable" && \ + exit 1 + +# letsencrypt certificate server type (default is production). +# Set `CERT_SERVER=--staging` for staging. +: "${CERT_SERVER=''}" + +# Create Docker volume to contain the cert +: "${SECRETS_VOLUME:=my-notebook-secrets}" +docker volume create --name "${SECRETS_VOLUME}" 1>/dev/null +# Generate the cert and save it to the Docker volume +docker run -it --rm \ + -p 80:80 \ + -v "${SECRETS_VOLUME}":/etc/letsencrypt \ + quay.io/letsencrypt/letsencrypt:latest \ + certonly \ + --non-interactive \ + --keep-until-expiring \ + --standalone \ + --standalone-supported-challenges http-01 \ + --agree-tos \ + --domain "${FQDN}" \ + --email "${EMAIL}" \ + "${CERT_SERVER}" + +# Set permissions so nobody can read the cert and key. +# Also symlink the certs into the root of the /etc/letsencrypt +# directory so that the FQDN doesn't have to be known later. +docker run -it --rm \ + -v "${SECRETS_VOLUME}":/etc/letsencrypt \ + ubuntu:22.04 \ + bash -c "ln -s /etc/letsencrypt/live/${FQDN}/* /etc/letsencrypt/ && \ + find /etc/letsencrypt -type d -exec chmod 755 {} +" diff --git a/examples/docker-compose/bin/sl-dns.sh b/examples/docker-compose/bin/sl-dns.sh new file mode 100755 index 0000000..fc3ea4e --- /dev/null +++ b/examples/docker-compose/bin/sl-dns.sh @@ -0,0 +1,23 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +set -e + +# User must have slcli installed +which slcli > /dev/null || (echo "SoftLayer cli not found (pip install softlayer)"; exit 1) + +USAGE="Usage: $(basename "${0}") machine_name [domain]" +E_BADARGS=85 + +# Machine name is first command line arg +MACHINE_NAME="${1}" && [ -z "${MACHINE_NAME}" ] && echo "${USAGE}" && exit ${E_BADARGS} + +# Use SOFTLAYER_DOMAIN env var if domain name not set as second arg +DOMAIN="${2:-$SOFTLAYER_DOMAIN}" && [ -z "${DOMAIN}" ] && \ + echo "Must specify domain or set SOFTLAYER_DOMAIN environment variable" && \ + echo "${USAGE}" && exit ${E_BADARGS} + +IP=$(docker-machine ip "${MACHINE_NAME}") + +slcli dns record-add "${DOMAIN}" "${MACHINE_NAME}" A "${IP}" diff --git a/examples/docker-compose/bin/softlayer.sh b/examples/docker-compose/bin/softlayer.sh new file mode 100755 index 0000000..cdf4766 --- /dev/null +++ b/examples/docker-compose/bin/softlayer.sh @@ -0,0 +1,15 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +# Set default SoftLayer VM settings +: "${SOFTLAYER_CPU:=4}" +export SOFTLAYER_CPU +: "${SOFTLAYER_DISK_SIZE:=100}" +export SOFTLAYER_DISK_SIZE +: "${SOFTLAYER_MEMORY:=4096}" +export SOFTLAYER_MEMORY +: "${SOFTLAYER_REGION:=wdc01}" +export SOFTLAYER_REGION + +docker-machine create --driver softlayer "$@" diff --git a/examples/docker-compose/bin/vbox.sh b/examples/docker-compose/bin/vbox.sh new file mode 100755 index 0000000..3859719 --- /dev/null +++ b/examples/docker-compose/bin/vbox.sh @@ -0,0 +1,11 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +# Set reasonable default VM settings +: "${VIRTUALBOX_CPUS:=4}" +export VIRTUALBOX_CPUS +: "${VIRTUALBOX_MEMORY_SIZE:=4096}" +export VIRTUALBOX_MEMORY_SIZE + +docker-machine create --driver virtualbox "$@" diff --git a/examples/docker-compose/notebook/Dockerfile b/examples/docker-compose/notebook/Dockerfile new file mode 100644 index 0000000..056c22f --- /dev/null +++ b/examples/docker-compose/notebook/Dockerfile @@ -0,0 +1,16 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +# Pick your favorite docker-stacks image +FROM quay.io/jupyter/minimal-notebook + +USER root + +# Add permanent apt-get installs and other root commands here +# e.g., RUN apt-get install --yes --no-install-recommends npm nodejs + +USER ${NB_UID} + +# Switch back to jovyan to avoid accidental container runs as root +# Add permanent mamba/pip/conda installs, data files, other user libs here +# e.g., RUN pip install --no-cache-dir flake8 diff --git a/examples/docker-compose/notebook/build.sh b/examples/docker-compose/notebook/build.sh new file mode 100755 index 0000000..304d4f7 --- /dev/null +++ b/examples/docker-compose/notebook/build.sh @@ -0,0 +1,12 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +# Setup environment +# shellcheck disable=SC1091 +source "${DIR}/env.sh" + +# Build the notebook image +docker-compose -f "${DIR}/notebook.yml" build diff --git a/examples/docker-compose/notebook/down.sh b/examples/docker-compose/notebook/down.sh new file mode 100755 index 0000000..f0fdd70 --- /dev/null +++ b/examples/docker-compose/notebook/down.sh @@ -0,0 +1,12 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +# Setup environment +# shellcheck disable=SC1091 +source "${DIR}/env.sh" + +# Bring down the notebook container, using container name as project name +docker-compose -f "${DIR}/notebook.yml" -p "${NAME}" down diff --git a/examples/docker-compose/notebook/env.sh b/examples/docker-compose/notebook/env.sh new file mode 100755 index 0000000..d3ef1eb --- /dev/null +++ b/examples/docker-compose/notebook/env.sh @@ -0,0 +1,22 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +# Set default values for environment variables required by notebook compose +# configuration file. + +# Container name +: "${NAME:=my-notebook}" +export NAME + +# Exposed container port +: "${PORT:=80}" +export PORT + +# Container work volume name +: "${WORK_VOLUME:=${NAME}-work}" +export WORK_VOLUME + +# Container secrets volume name +: "${SECRETS_VOLUME:=${NAME}-secrets}" +export SECRETS_VOLUME diff --git a/examples/docker-compose/notebook/letsencrypt-notebook.yml b/examples/docker-compose/notebook/letsencrypt-notebook.yml new file mode 100644 index 0000000..06bab31 --- /dev/null +++ b/examples/docker-compose/notebook/letsencrypt-notebook.yml @@ -0,0 +1,31 @@ +--- +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +version: "2" + +services: + notebook: + build: . + image: my-notebook + container_name: ${NAME} + volumes: + - "work:/home/jovyan/work" + - "secrets:/etc/letsencrypt" + ports: + - "${PORT}:8888" + environment: + USE_HTTPS: "yes" + PASSWORD: ${PASSWORD} + command: > + start-notebook.py + --ServerApp.certfile=/etc/letsencrypt/fullchain.pem + --ServerApp.keyfile=/etc/letsencrypt/privkey.pem + +volumes: + work: + external: + name: ${WORK_VOLUME} + secrets: + external: + name: ${SECRETS_VOLUME} diff --git a/examples/docker-compose/notebook/notebook.yml b/examples/docker-compose/notebook/notebook.yml new file mode 100644 index 0000000..72002a5 --- /dev/null +++ b/examples/docker-compose/notebook/notebook.yml @@ -0,0 +1,20 @@ +--- +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +version: "2" + +services: + notebook: + build: . + image: my-notebook + container_name: ${NAME} + volumes: + - "work:/home/jovyan/work" + ports: + - "${PORT}:8888" + +volumes: + work: + external: + name: ${WORK_VOLUME} diff --git a/examples/docker-compose/notebook/secure-notebook.yml b/examples/docker-compose/notebook/secure-notebook.yml new file mode 100644 index 0000000..6b38f9c --- /dev/null +++ b/examples/docker-compose/notebook/secure-notebook.yml @@ -0,0 +1,23 @@ +--- +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +version: "2" + +services: + notebook: + build: . + image: my-notebook + container_name: ${NAME} + volumes: + - "work:/home/jovyan/work" + ports: + - "${PORT}:8888" + environment: + USE_HTTPS: "yes" + PASSWORD: ${PASSWORD} + +volumes: + work: + external: + name: ${WORK_VOLUME} diff --git a/examples/docker-compose/notebook/up.sh b/examples/docker-compose/notebook/up.sh new file mode 100755 index 0000000..c02ed3a --- /dev/null +++ b/examples/docker-compose/notebook/up.sh @@ -0,0 +1,72 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +set -e + +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" + +USAGE="Usage: $(basename "${0}") [--secure | --letsencrypt] [--password PASSWORD] [--secrets SECRETS_VOLUME]" + +# Parse args to determine security settings +SECURE=${SECURE:=no} +LETSENCRYPT=${LETSENCRYPT:=no} +while [[ $# -gt 0 ]]; do +key="${1}" +case "${key}" in + --secure) + SECURE=yes + ;; + --letsencrypt) + LETSENCRYPT=yes + ;; + --secrets) + SECRETS_VOLUME="${2}" + shift # past argument + ;; + --password) + PASSWORD="${2}" + export PASSWORD + shift # past argument + ;; + *) # unknown option + ;; +esac +shift # past argument or value +done + +if [[ "${LETSENCRYPT}" == yes || "${SECURE}" == yes ]]; then + if [ -z "${PASSWORD:+x}" ]; then + echo "ERROR: Must set PASSWORD if running in secure mode" + echo "${USAGE}" + exit 1 + fi + if [ "${LETSENCRYPT}" == yes ]; then + CONFIG=letsencrypt-notebook.yml + if [ -z "${SECRETS_VOLUME:+x}" ]; then + echo "ERROR: Must set SECRETS_VOLUME if running in letsencrypt mode" + echo "${USAGE}" + exit 1 + fi + else + CONFIG=secure-notebook.yml + fi + export PORT=${PORT:=443} +else + CONFIG=notebook.yml + export PORT=${PORT:=80} +fi + +# Setup environment +# shellcheck disable=SC1091 +source "${DIR}/env.sh" + +# Create a Docker volume to store notebooks +docker volume create --name "${WORK_VOLUME}" + +# Bring up a notebook container, using container name as project name +echo "Bringing up notebook '${NAME}'" +docker-compose -f "${DIR}/${CONFIG}" -p "${NAME}" up -d + +IP=$(docker-machine ip "$(docker-machine active)") +echo "Notebook ${NAME} listening on ${IP}:${PORT}" diff --git a/examples/make-deploy/Dockerfile b/examples/make-deploy/Dockerfile new file mode 100644 index 0000000..056c22f --- /dev/null +++ b/examples/make-deploy/Dockerfile @@ -0,0 +1,16 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +# Pick your favorite docker-stacks image +FROM quay.io/jupyter/minimal-notebook + +USER root + +# Add permanent apt-get installs and other root commands here +# e.g., RUN apt-get install --yes --no-install-recommends npm nodejs + +USER ${NB_UID} + +# Switch back to jovyan to avoid accidental container runs as root +# Add permanent mamba/pip/conda installs, data files, other user libs here +# e.g., RUN pip install --no-cache-dir flake8 diff --git a/examples/make-deploy/Makefile b/examples/make-deploy/Makefile new file mode 100644 index 0000000..aa62dd0 --- /dev/null +++ b/examples/make-deploy/Makefile @@ -0,0 +1,44 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +.PHONY: help check image notebook + +IMAGE:=my-notebook + +# Common, extensible docker run command +define RUN_NOTEBOOK +@docker volume create --name $(WORK_VOLUME) > /dev/null +-@docker rm --force $(NAME) 2> /dev/null +@docker run --detach -p $(PORT):8888 \ + --name $(NAME) \ + -v $(WORK_VOLUME):/home/jovyan/work \ + $(DOCKER_ARGS) \ + $(IMAGE) bash -c "$(PRE_CMD) chown jovyan /home/jovyan/work && start-notebook.py $(ARGS)" > /dev/null +@echo "DONE: Notebook '$(NAME)' listening on $$(docker-machine ip $$(docker-machine active)):$(PORT)" +endef + +help: + @cat README.md + +check: + @which docker-machine > /dev/null || (echo "ERROR: docker-machine not found (brew install docker-machine)"; exit 1) + @which docker > /dev/null || (echo "ERROR: docker not found (brew install docker)"; exit 1) + @docker | grep volume > /dev/null || (echo "ERROR: docker 1.9.0+ required"; exit 1) + +image: DOCKER_ARGS?= +image: + @docker build --rm $(DOCKER_ARGS) --tag $(IMAGE) . + +notebook: PORT?=80 +notebook: NAME?=notebook +notebook: WORK_VOLUME?=$(NAME)-data +notebook: check + $(RUN_NOTEBOOK) + +# docker-machine drivers +include virtualbox.makefile +include softlayer.makefile + +# Preset notebook configurations +include self-signed.makefile +include letsencrypt.makefile diff --git a/examples/make-deploy/README.md b/examples/make-deploy/README.md new file mode 100644 index 0000000..0636612 --- /dev/null +++ b/examples/make-deploy/README.md @@ -0,0 +1,130 @@ +# Make deploy example + +This folder contains a Makefile and a set of supporting files demonstrating how to run a docker-stack notebook container on a docker-machine controlled host. + +## Prerequisites + +- make 3.81+ + - Ubuntu users: Be aware of [make 3.81 defect 483086](https://bugs.launchpad.net/ubuntu/+source/make-dfsg/+bug/483086) which exists in 14.04 LTS but is fixed in 15.04+ +- docker-machine 0.5.0+ +- docker 1.9.0+ + +## Quickstart + +To show what's possible, here's how to run the `jupyter/minimal-notebook` on a brand-new local virtualbox. + +```bash +# create a new VM +make virtualbox-vm NAME=dev +# make the new VM the active docker machine +eval $(docker-machine env dev) +# pull a docker stack and build a local image from it +make image +# start a Server in a container +make notebook +``` + +The last command will log the IP address and port to visit in your browser. + +## FAQ + +### Can I run multiple notebook containers on the same VM? + +Yes. Specify a unique name and port on the `make notebook` command. + +```bash +make notebook NAME=my-notebook PORT=9000 +make notebook NAME=your-notebook PORT=9001 +``` + +### Can multiple notebook containers share their notebook directory? + +Yes. + +```bash +make notebook NAME=my-notebook PORT=9000 WORK_VOLUME=our-work +make notebook NAME=your-notebook PORT=9001 WORK_VOLUME=our-work +``` + +### How do I run over HTTPS? + +Instead of `make notebook`, run `make self-signed-notebook PASSWORD=your_desired_password`. +This target gives you a notebook with a self-signed certificate. + +### That self-signed certificate is a pain. Let's Encrypt? + +Yes. Please. + +```bash +make letsencrypt FQDN=host.mydomain.com EMAIL=myemail@somewhere.com +make letsencrypt-notebook +``` + +The first command creates a Docker volume named after the notebook container with a `-secrets` suffix. +It then runs the `letsencrypt` client with a slew of options (one of which has you automatically agreeing to the Let's Encrypt Terms of Service, see the Makefile). +The second command mounts the secrets volume and configures Jupyter to use the full-chain certificate and private key. + +Be aware: Let's Encrypt has a pretty [low rate limit per domain](https://community.letsencrypt.org/t/public-beta-rate-limits/4772/3) at the moment. +You can avoid exhausting your limit by testing against the Let's Encrypt staging servers. +To hit their staging servers, set the environment variable `CERT_SERVER=--staging`. + +```bash +make letsencrypt FQDN=host.mydomain.com EMAIL=myemail@somewhere.com CERT_SERVER=--staging +``` + +Also, keep in mind Let's Encrypt certificates are short-lived: 90 days at the moment. +You'll need to manually set up a cron job to run the renewal steps at the moment. +(You can reuse the first command above.) + +### My pip/conda/apt-get installs disappear every time I restart the container. Can I make them permanent? + +```bash +# add your pip, conda, apt-get, etc. permanent features to the Dockerfile where +# indicated by the comments in the Dockerfile +vi Dockerfile +make image +make notebook +``` + +### How do I upgrade my Docker container? + +```bash +make image DOCKER_ARGS=--pull +make notebook +``` + +The first line pulls the latest version of the Docker image used in the local Dockerfile. +Then it rebuilds the local Docker image containing any customizations you may have added to it. +The second line kills your currently running notebook container, and starts a fresh one using the new image. + +### Can I run on another VM provider other than VirtualBox? + +Yes. As an example, there's a `softlayer.makefile` included in this repo as an example. +You would use it like so: + +```bash +make softlayer-vm NAME=myhost \ + SOFTLAYER_DOMAIN=your_desired_domain \ + SOFTLAYER_USER=your_user_id \ + SOFTLAYER_API_KEY=your_api_key +eval $(docker-machine env myhost) +# optional, creates a real DNS entry for the VM using the machine name as the hostname +make softlayer-dns SOFTLAYER_DOMAIN=your_desired_domain +make image +make notebook +``` + +If you'd like to add support for another docker-machine driver, use the `softlayer.makefile` as a template. + +### Where are my notebooks stored? + +`make notebook` creates a Docker volume named after the notebook container with a `-data` suffix. + +### Uh ... make? + +Yes, sorry Windows users. It got the job done for a simple example. +We can certainly accept other deployment mechanism examples in the parent folder or in other repos. + +### Are there any other options? + +Yes indeed. `cat` the Makefiles and look at the target parameters. diff --git a/examples/make-deploy/letsencrypt.makefile b/examples/make-deploy/letsencrypt.makefile new file mode 100644 index 0000000..1954965 --- /dev/null +++ b/examples/make-deploy/letsencrypt.makefile @@ -0,0 +1,60 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +# BE CAREFUL when using Docker engine <1.10 because running a container with +# `--rm` option while mounting a docker volume may wipe out the volume. +# See issue: https://github.com/moby/moby/issues/17907 + +# Use letsencrypt production server by default to get a real cert. +# Use CERT_SERVER=--staging to hit the staging server (not a real cert). + +letsencrypt: NAME?=notebook +letsencrypt: SECRETS_VOLUME?=$(NAME)-secrets +letsencrypt: TMP_CONTAINER?=$(NAME)-tmp +letsencrypt: CERT_SERVER?= +letsencrypt: + @test -n "$(FQDN)" || \ + (echo "ERROR: FQDN not defined or blank"; exit 1) + @test -n "$(EMAIL)" || \ + (echo "ERROR: EMAIL not defined or blank"; exit 1) + @docker volume create --name $(SECRETS_VOLUME) > /dev/null + @docker run -it -p 80:80 \ + --name=$(TMP_CONTAINER) \ + -v $(SECRETS_VOLUME):/etc/letsencrypt \ + quay.io/letsencrypt/letsencrypt:latest \ + certonly \ + $(CERT_SERVER) \ + --keep-until-expiring \ + --standalone \ + --standalone-supported-challenges http-01 \ + --agree-tos \ + --domain '$(FQDN)' \ + --email '$(EMAIL)'; \ + docker rm --force $(TMP_CONTAINER) > /dev/null +# The letsencrypt image has an entrypoint, so we use the notebook image +# instead so we can run arbitrary commands. +# Here we set the permissions so nobody can read the cert and key. +# We also symlink the certs into the root of the /etc/letsencrypt +# directory so that the FQDN doesn't have to be known later. + @docker run -it \ + --name=$(TMP_CONTAINER) \ + -v $(SECRETS_VOLUME):/etc/letsencrypt \ + $(NOTEBOOK_IMAGE) \ + bash -c "ln -s /etc/letsencrypt/live/$(FQDN)/* /etc/letsencrypt/ && \ + find /etc/letsencrypt -type d -exec chmod 755 {} +"; \ + docker rm --force $(TMP_CONTAINER) > /dev/null + +letsencrypt-notebook: PORT?=443 +letsencrypt-notebook: NAME?=notebook +letsencrypt-notebook: WORK_VOLUME?=$(NAME)-data +letsencrypt-notebook: SECRETS_VOLUME?=$(NAME)-secrets +letsencrypt-notebook: DOCKER_ARGS:=-e USE_HTTPS=yes \ + -e PASSWORD=$(PASSWORD) \ + -v $(SECRETS_VOLUME):/etc/letsencrypt +letsencrypt-notebook: ARGS:=\ + --ServerApp.certfile=/etc/letsencrypt/fullchain.pem \ + --ServerApp.keyfile=/etc/letsencrypt/privkey.pem +letsencrypt-notebook: check + @test -n "$(PASSWORD)" || \ + (echo "ERROR: PASSWORD not defined or blank"; exit 1) + $(RUN_NOTEBOOK) diff --git a/examples/make-deploy/self-signed.makefile b/examples/make-deploy/self-signed.makefile new file mode 100644 index 0000000..ebdf67d --- /dev/null +++ b/examples/make-deploy/self-signed.makefile @@ -0,0 +1,12 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +self-signed-notebook: PORT?=443 +self-signed-notebook: NAME?=notebook +self-signed-notebook: WORK_VOLUME?=$(NAME)-data +self-signed-notebook: DOCKER_ARGS:=-e USE_HTTPS=yes \ + -e PASSWORD=$(PASSWORD) +self-signed-notebook: check + @test -n "$(PASSWORD)" || \ + (echo "ERROR: PASSWORD not defined or blank"; exit 1) + $(RUN_NOTEBOOK) diff --git a/examples/make-deploy/softlayer.makefile b/examples/make-deploy/softlayer.makefile new file mode 100644 index 0000000..62519c3 --- /dev/null +++ b/examples/make-deploy/softlayer.makefile @@ -0,0 +1,26 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +softlayer-vm: export SOFTLAYER_CPU?=4 +softlayer-vm: export SOFTLAYER_DISK_SIZE?=100 +softlayer-vm: export SOFTLAYER_MEMORY?=4096 +softlayer-vm: export SOFTLAYER_REGION?=wdc01 +softlayer-vm: check + @test -n "$(NAME)" || \ + (echo "ERROR: NAME not defined (make help)"; exit 1) + @test -n "$(SOFTLAYER_API_KEY)" || \ + (echo "ERROR: SOFTLAYER_API_KEY not defined (make help)"; exit 1) + @test -n "$(SOFTLAYER_USER)" || \ + (echo "ERROR: SOFTLAYER_USER not defined (make help)"; exit 1) + @test -n "$(SOFTLAYER_DOMAIN)" || \ + (echo "ERROR: SOFTLAYER_DOMAIN not defined (make help)"; exit 1) + @docker-machine create -d softlayer $(NAME) + @echo "DONE: Docker host '$(NAME)' up at $$(docker-machine ip $(NAME))" + +softlayer-dns: HOST_NAME:=$$(docker-machine active) +softlayer-dns: IP:=$$(docker-machine ip $(HOST_NAME)) +softlayer-dns: check + @which slcli > /dev/null || (echo "softlayer cli not found (pip install softlayer)"; exit 1) + @test -n "$(SOFTLAYER_DOMAIN)" || \ + (echo "ERROR: SOFTLAYER_DOMAIN not defined (make help)"; exit 1) + @slcli dns record-add $(SOFTLAYER_DOMAIN) $(HOST_NAME) A $(IP) diff --git a/examples/make-deploy/virtualbox.makefile b/examples/make-deploy/virtualbox.makefile new file mode 100644 index 0000000..73d6e44 --- /dev/null +++ b/examples/make-deploy/virtualbox.makefile @@ -0,0 +1,10 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +virtualbox-vm: export VIRTUALBOX_CPU_COUNT?=4 +virtualbox-vm: export VIRTUALBOX_DISK_SIZE?=100000 +virtualbox-vm: export VIRTUALBOX_MEMORY_SIZE?=4096 +virtualbox-vm: check + @test -n "$(NAME)" || \ + (echo "ERROR: NAME not defined (make help)"; exit 1) + @docker-machine create -d virtualbox $(NAME) diff --git a/examples/openshift/README.md b/examples/openshift/README.md new file mode 100644 index 0000000..65928d4 --- /dev/null +++ b/examples/openshift/README.md @@ -0,0 +1,229 @@ +# OpenShift example + +This example provides templates for deploying the Jupyter Project docker-stacks images to OpenShift. + +## Prerequisites + +Any OpenShift 3 environment. +The templates were tested with OpenShift 3.7. +It is believed they should work with at least OpenShift 3.6 or later. + +Do be aware that the Jupyter Project docker-stacks images are very large. +The OpenShift environment you are using must provide sufficient quota on the per-user space for images and the file system for running containers. +If the quota is too small, the pulling of the images to a node in the OpenShift cluster when deploying them, will fail due to lack of space. +Even if the image is able to run, if the quota is only just larger than the space required for the image, you will not be able to install many packages into the container before running out of space. + +OpenShift Online, the public hosted version of OpenShift from Red Hat has a quota of only 3GB for the image and container file system. +As a result, only the `minimal-notebook` can be started and there is little space remaining to install additional packages. +Although OpenShift Online is suitable for demonstrating these templates work, what you can do in that environment will be limited due to the size of the images. + +If you want to experiment with using Jupyter Notebooks in an OpenShift environment, you should instead use [Minishift](https://www.openshift.org/minishift/). +Minishift provides you the ability to run OpenShift in a virtual machine on your own local computer. + +## Loading the Templates + +To load the templates, login to OpenShift from the command line and run: + +```bash +oc create -f https://raw.githubusercontent.com/jupyter-on-openshift/docker-stacks/master/examples/openshift/templates.json +``` + +This should create the `jupyter-notebook` template + +The template can be used from the command line using the `oc new-app` command, or from the OpenShift web console by selecting _Add to Project_. +This `README` is only going to explain deploying from the command line. + +## Deploying a Notebook + +To deploy a notebook from the command line using the template, run: + +```bash +oc new-app --template jupyter-notebook +``` + +The output will be similar to: + +```lang-none +--> Deploying template "jupyter/jupyter-notebook" to project jupyter + + Jupyter Notebook + --------- + Template for deploying Jupyter Notebook images. + + * With parameters: + * APPLICATION_NAME=notebook + * NOTEBOOK_IMAGE=docker.io/jupyter/minimal-notebook:latest + * NOTEBOOK_PASSWORD=ded4d7cada554aa48e0db612e1ed1080 # generated + +--> Creating resources ... + configmap "notebook-cfg" created + deploymentconfig "notebook" created + route "notebook" created + service "notebook" created +--> Success + Access your application via route 'notebook-jupyter.b9ad.pro-us-east-1.openshiftapps.com' + Run 'oc status' to view your app. +``` + +When no template parameters are provided, the name of the deployed notebook will be `notebook`. +The image used will be: + +```lang-none +docker.io/jupyter/minimal-notebook:latest +``` + +A password you can use when accessing the notebook will be auto generated and is displayed in the output from running `oc new-app`. + +To see the hostname for accessing the notebook run: + +```bash +oc get routes +``` + +The output will be similar to: + +```lang-none +NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD +notebook notebook-jupyter.abcd.pro-us-east-1.openshiftapps.com notebook 8888-tcp edge/Redirect None +``` + +A secure route will be used to expose the notebook outside the OpenShift cluster, so in this case the URL would be: + +```lang-none +https://notebook-jupyter.abcd.pro-us-east-1.openshiftapps.com/ +``` + +When prompted, enter the password for the notebook. + +## Passing Template Parameters + +To override the name for the notebook, the image used, and the password, you can pass template parameters using the `--param` option. + +```bash +oc new-app --template jupyter-notebook \ + --param APPLICATION_NAME=mynotebook \ + --param NOTEBOOK_IMAGE=docker.io/jupyter/scipy-notebook:latest \ + --param NOTEBOOK_PASSWORD=mypassword +``` + +You can deploy any of the Jupyter Project docker-stacks images. + +If you don't care what version of the image is used, add the `:latest` tag at the end of the image name, otherwise use the hash corresponding to the image version you want to use. + +## Deleting the Notebook Instance + +To delete the notebook instance, run `oc delete` using a label selector for the application name. + +```bash +oc delete all,configmap --selector app=mynotebook +``` + +## Adding Persistent Storage + +You can upload notebooks and other files using the web interface of the notebook. +Any uploaded files or changes you make to them will be lost when the notebook instance is restarted. +If you want to save your work, you need to add persistent storage to the notebook. +To add persistent storage run: + +```bash +oc set volume dc/mynotebook --add \ + --type=pvc --claim-size=1Gi --claim-mode=ReadWriteOnce \ + --claim-name mynotebook-data --name data \ + --mount-path /home/jovyan +``` + +When you have deleted the notebook instance, if using a persistent volume, you will need to delete it in a separate step. + +```bash +oc delete pvc/mynotebook-data +``` + +## Customizing the Configuration + +If you want to set any custom configuration for the notebook, you can edit the config map created by the template. + +```bash +oc edit configmap/mynotebook-cfg +``` + +The `data` field of the config map contains Python code used as the `jupyter_server_config.py` file. + +If you are using a persistent volume, you can also create a configuration file at: + +```lang-none +/home/jovyan/.jupyter/jupyter_server_config.py +``` + +This will be merged at the end of the configuration from the config map. + +Because the configuration is Python code, ensure any indenting is correct. +Any errors in the configuration file will cause the notebook to fail when starting. + +If the error is in the config map, edit it again to fix it and trigger a new deployment if necessary by running: + +```bash +oc rollout latest dc/mynotebook +``` + +If you make an error in the configuration file stored in the persistent volume, you will need to scale down the notebook, so it isn't running. + +```bash +oc scale dc/mynotebook --replicas 0 +``` + +Then run: + +```bash +oc debug dc/mynotebook +``` + +to run the notebook in debug mode. +This will provide you with an interactive terminal session inside a running container, but the notebook will not have been started. +Edit the configuration file in the volume to fix any errors and exit the terminal session. + +Start up the notebook again. + +```bash +oc scale dc/mynotebook --replicas 1 +``` + +## Changing the Notebook Password + +The password for the notebook is supplied as a template parameter, or if not supplied will be automatically generated by the template. +It will be passed into the container through an environment variable. + +If you want to change the password, you can do so by editing the environment variable on the deployment configuration. + +```bash +oc set env dc/mynotebook JUPYTER_NOTEBOOK_PASSWORD=mypassword +``` + +This will trigger a new deployment so ensure you have downloaded any work if not using a persistent volume. + +If using a persistent volume, you could instead set up a password in the file `/home/jovyan/.jupyter/jupyter_server_config.py` as per guidelines in . + +## Deploying from a Custom Image + +If you want to deploy a custom variant of the Jupyter Project docker-stacks images, you can replace the image name with that of your own. +If the image is not stored on Docker Hub, but some other public image registry, prefix the name of the image with the image registry host details. + +If the image is in your OpenShift project, because you imported the image into OpenShift, or used the docker build strategy of OpenShift to build a derived custom image, +you can use the name of the image stream for the image name, including any image tag if necessary. + +This can be illustrated by first importing an image into the OpenShift project. + +```bash +oc import-image docker.io/jupyter/datascience-notebook:latest --confirm +``` + +Then deploy it using the name of the image stream created. + +```bash +oc new-app --template jupyter-notebook \ + --param APPLICATION_NAME=mynotebook \ + --param NOTEBOOK_IMAGE=datascience-notebook \ + --param NOTEBOOK_PASSWORD=mypassword +``` + +Importing an image into OpenShift before deploying it means that when a notebook is started, the image need only be pulled from the internal OpenShift image registry rather than Docker Hub for each deployment. +Because the images are so large, this can speed up deployments when the image hasn't previously been deployed to a node in the OpenShift cluster. diff --git a/examples/openshift/templates.json b/examples/openshift/templates.json new file mode 100644 index 0000000..ebcd6cb --- /dev/null +++ b/examples/openshift/templates.json @@ -0,0 +1,175 @@ +{ + "kind": "Template", + "apiVersion": "v1", + "metadata": { + "name": "jupyter-notebook", + "annotations": { + "openshift.io/display-name": "Jupyter Notebook", + "description": "Template for deploying Jupyter Notebook images.", + "iconClass": "icon-python", + "tags": "python,jupyter" + } + }, + "parameters": [ + { + "name": "APPLICATION_NAME", + "value": "notebook", + "required": true + }, + { + "name": "NOTEBOOK_IMAGE", + "value": "docker.io/jupyter/minimal-notebook:latest", + "required": true + }, + { + "name": "NOTEBOOK_PASSWORD", + "from": "[a-f0-9]{32}", + "generate": "expression" + } + ], + "objects": [ + { + "kind": "ConfigMap", + "apiVersion": "v1", + "metadata": { + "name": "${APPLICATION_NAME}-cfg", + "labels": { + "app": "${APPLICATION_NAME}" + } + }, + "data": { + "jupyter_server_config.py": "import os\n\npassword = os.environ.get('JUPYTER_NOTEBOOK_PASSWORD')\n\nif password:\n from jupyter_server.auth import passwd\n c.ServerApp.password = passwd(password)\n del password\n del os.environ['JUPYTER_NOTEBOOK_PASSWORD']\n\nimage_config_file = '/home/jovyan/.jupyter/jupyter_server_config.py'\n\nif os.path.exists(image_config_file):\n with open(image_config_file) as fp:\n exec(compile(fp.read(), image_config_file, 'exec'), globals())\n" + } + }, + { + "kind": "DeploymentConfig", + "apiVersion": "v1", + "metadata": { + "name": "${APPLICATION_NAME}", + "labels": { + "app": "${APPLICATION_NAME}" + } + }, + "spec": { + "strategy": { + "type": "Recreate" + }, + "triggers": [ + { + "type": "ConfigChange" + } + ], + "replicas": 1, + "selector": { + "app": "${APPLICATION_NAME}", + "deploymentconfig": "${APPLICATION_NAME}" + }, + "template": { + "metadata": { + "annotations": { + "alpha.image.policy.openshift.io/resolve-names": "*" + }, + "labels": { + "app": "${APPLICATION_NAME}", + "deploymentconfig": "${APPLICATION_NAME}" + } + }, + "spec": { + "containers": [ + { + "name": "jupyter-notebook", + "image": "${NOTEBOOK_IMAGE}", + "command": [ + "start-notebook.py", + "--config=/etc/jupyter/openshift/jupyter_server_config.py", + "--no-browser", + "--ip=0.0.0.0" + ], + "ports": [ + { + "containerPort": 8888, + "protocol": "TCP" + } + ], + "env": [ + { + "name": "JUPYTER_NOTEBOOK_PASSWORD", + "value": "${NOTEBOOK_PASSWORD}" + } + ], + "volumeMounts": [ + { + "mountPath": "/etc/jupyter/openshift", + "name": "configs" + } + ] + } + ], + "automountServiceAccountToken": false, + "securityContext": { + "supplementalGroups": [100] + }, + "volumes": [ + { + "configMap": { + "name": "${APPLICATION_NAME}-cfg" + }, + "name": "configs" + } + ] + } + } + } + }, + { + "kind": "Route", + "apiVersion": "v1", + "metadata": { + "name": "${APPLICATION_NAME}", + "labels": { + "app": "${APPLICATION_NAME}" + } + }, + "spec": { + "host": "", + "to": { + "kind": "Service", + "name": "${APPLICATION_NAME}", + "weight": 100 + }, + "port": { + "targetPort": "8888-tcp" + }, + "tls": { + "termination": "edge", + "insecureEdgeTerminationPolicy": "Redirect" + } + } + }, + { + "kind": "Service", + "apiVersion": "v1", + "metadata": { + "name": "${APPLICATION_NAME}", + "labels": { + "app": "${APPLICATION_NAME}" + } + }, + "spec": { + "ports": [ + { + "name": "8888-tcp", + "protocol": "TCP", + "port": 8888, + "targetPort": 8888 + } + ], + "selector": { + "app": "${APPLICATION_NAME}", + "deploymentconfig": "${APPLICATION_NAME}" + }, + "type": "ClusterIP" + } + } + ] +} diff --git a/examples/source-to-image/README.md b/examples/source-to-image/README.md new file mode 100644 index 0000000..6d4bcb8 --- /dev/null +++ b/examples/source-to-image/README.md @@ -0,0 +1,170 @@ +# Custom Jupyter Notebook images + +This example provides scripts for building custom Jupyter Notebook images containing notebooks, data files, and with Python packages required by the notebooks already installed. +The scripts provided work with the Source-to-Image tool, and you can create the images from the command line on your own computer. +Templates are also provided to enable running builds in OpenShift, as well as deploying the resulting image to OpenShift to make it available. + +The build scripts, when used with the Source-to-Image tool, provide similar capabilities to `repo2docker`. +When builds are run under OpenShift with the supplied templates, it provides similar capabilities to `mybinder.org`, +but where notebook instances are deployed in your existing OpenShift project and JupyterHub is not required. + +For separate examples of using JupyterHub with OpenShift, see the project: + +- + +## Source-to-Image Project + +Source-to-Image (S2I) is an open source project which provides a tool for creating container images. +It works by taking a base image, injecting additional source code or files into a running container created from the base image, +and running a builder script in the container to process the source code or files to prepare the new image. + +Details on the S2I tool, and executable binaries for Linux, macOS and Windows, can be found on GitHub at: + +- + +The tool is standalone, and can be used on any system which provides a docker daemon for running containers. +To provide an end-to-end capability to build and deploy applications in containers, support for S2I is also integrated into container platforms such as OpenShift. + +## Getting Started with S2I + +As an example of how S2I can be used to create a custom image with a bundled set of notebooks, run: + +```bash +s2i build \ + --scripts-url https://raw.githubusercontent.com/jupyter/docker-stacks/main/examples/source-to-image \ + --context-dir docs/source/examples/Notebook \ + https://github.com/jupyter/notebook \ + docker.io/jupyter/minimal-notebook:latest \ + notebook-examples +``` + +This example command will pull down the Git repository +and build the image `notebook-examples` using the files contained in the `docs/source/examples/Notebook` directory of that Git repository. +The base image which the files will be combined with is `docker.io/jupyter/minimal-notebook:latest`, but you can specify any of the Jupyter Project `docker-stacks` images as the base image. + +The resulting image from running the command can be seen by running `docker images` command: + +```bash +docker images +# REPOSITORY TAG IMAGE ID CREATED SIZE +# notebook-examples latest f5899ed1241d 2 minutes ago 2.59GB +``` + +You can now run the image. + +```bash +docker run --rm -p 8888:8888 notebook-examples +``` + +Open your browser on the URL displayed, and you will find the notebooks from the Git repository and can work with them. + +## The S2I Builder Scripts + +Normally when using S2I, the base image would be S2I enabled and contain the builder scripts needed to prepare the image and define how the application in the image should be run. +As the Jupyter Project `docker-stacks` images are not S2I enabled (although they could be), +in the above example the `--scripts-url` option has been used to specify that the example builder scripts contained in this directory of this Git repository should be used. + +Using the `--scripts-url` option, the builder scripts can be hosted on any HTTP server, +or you could also use builder scripts local to your computer file using an appropriate `file://` format URI argument to `--scripts-url`. + +The builder scripts in this directory of this repository are `assemble` and `run` and are provided as examples of what can be done. +You can use the scripts as is, or create your own. + +The supplied `assemble` script performs a few key steps. + +The first steps copy files into the location they need to be when the image is run, from the directory where they are initially placed by the `s2i` command. + +```bash +cp -Rf /tmp/src/. "/home/${NB_USER}" + +rm -rf /tmp/src +``` + +The next steps are: + +```bash +if [ -f "/home/${NB_USER}/environment.yml" ]; then + mamba env update --name root --file "/home/${NB_USER}/environment.yml" + mamba clean --all -f -y +else + if [ -f "/home/${NB_USER}/requirements.txt" ]; then + pip --no-cache-dir install -r "/home/${NB_USER}/requirements.txt" + fi +fi +``` + +This determines whether a `environment.yml` or `requirements.txt` file exists with the files and if so, runs the appropriate package management tool to install any Python packages listed in those files. + +This means that so long as a set of notebook files provides one of these files listing what Python packages they need, +those packages will be automatically installed into the image, so they are available when the image is run. + +A final step is: + +```bash +fix-permissions "${CONDA_DIR}" +fix-permissions "/home/${NB_USER}" +``` + +This fixes up permissions on any new files created by the build. +This is necessary to ensure that when the image is run, you can still install additional files. +This is important for when an image is run in `sudo` mode, or it is hosted in a more secure container platform such as Kubernetes/OpenShift where it will be run as a set user ID that isn't known in advance. + +As long as you preserve the first and last set of steps, you can do whatever you want in the `assemble` script to install packages, create files etc. +Do be aware though that S2I builds do not run as `root` and so you cannot install additional system packages. +If you need to install additional system packages, use a `Dockerfile` and normal `docker build` to first create a new custom base image from the Jupyter Project `docker-stacks` images, +with the extra system packages, and then use that image with the S2I build to combine your notebooks and have Python packages installed. + +The `run` script in this directory is very simple and just runs the notebook application. + +```bash +exec start-notebook.py "$@" +``` + +## Integration with OpenShift + +The OpenShift platform provides integrated support for S2I type builds. +Templates are provided for using the S2I build mechanism with the scripts in this directory. +To load the templates run: + +```bash +oc create -f https://raw.githubusercontent.com/jupyter/docker-stacks/main/examples/source-to-image/templates.json +``` + +This will create the templates: + +```bash +jupyter-notebook-builder +jupyter-notebook-quickstart +``` + +The templates can be used from the OpenShift web console or command line. +This `README` is only going to explain deploying from the command line. + +To use the OpenShift command line to build into an image, and deploy, the set of notebooks used above, run: + +```bash +oc new-app --template jupyter-notebook-quickstart \ + --param APPLICATION_NAME=notebook-examples \ + --param GIT_REPOSITORY_URL=https://github.com/jupyter/notebook \ + --param CONTEXT_DIR=docs/source/examples/Notebook \ + --param BUILDER_IMAGE=docker.io/jupyter/minimal-notebook:latest \ + --param NOTEBOOK_PASSWORD=mypassword +``` + +You can provide a password using the `NOTEBOOK_PASSWORD` parameter. +If you don't set that parameter, a password will be generated, with it being displayed by the `oc new-app` command. + +Once the image has been built, it will be deployed. +To see the hostname for accessing the notebook, run `oc get routes`. + +```lang-none +NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD +notebook-examples notebook-examples-jupyter.abcd.pro-us-east-1.openshiftapps.com notebook-examples 8888-tcp edge/Redirect None +``` + +As the deployment will use a secure connection, the URL for accessing the notebook in this case would be . + +If you only want to build an image but not deploy it, you can use the `jupyter-notebook-builder` template. +You can then deploy it using the `jupyter-notebook` template provided with the [openshift](../openshift) examples directory. + +See the `openshift` examples directory for further information on customizing configuration for a Jupyter Notebook deployment and deleting a deployment. diff --git a/examples/source-to-image/assemble b/examples/source-to-image/assemble new file mode 100755 index 0000000..56f23aa --- /dev/null +++ b/examples/source-to-image/assemble @@ -0,0 +1,40 @@ +#!/bin/bash + +set -x + +set -eo pipefail + +# Remove any 'environment.yml' or 'requirements.txt' files which may +# have been carried over from the base image so we don't reinstall +# packages which have already been installed. This could occur where +# an S2I build was used to create a new base image with pre-installed +# Python packages, with the new image then subsequently being used as a +# S2I builder base image. + +rm -f "/home/${NB_USER}/environment.yml" +rm -f "/home/${NB_USER}/requirements.txt" + +# Copy injected files to target directory. + +cp -Rf /tmp/src/. "/home/${NB_USER}" + +rm -rf /tmp/src + +# Install any Python modules. If we find an 'environment.yml' file we +# assume we should use 'conda' to install packages. If 'requirements.txt' +# use 'pip' instead. + +if [ -f "/home/${NB_USER}/environment.yml" ]; then + mamba env update --name root --file "/home/${NB_USER}/environment.yml" + mamba clean --all -f -y +else + if [ -f "/home/${NB_USER}/requirements.txt" ]; then + pip --no-cache-dir install -r "/home/${NB_USER}/requirements.txt" + fi +fi + +# Fix up permissions on home directory and Python installation so that +# everything is still writable by 'users' group. + +fix-permissions "${CONDA_DIR}" +fix-permissions "/home/${NB_USER}" diff --git a/examples/source-to-image/run b/examples/source-to-image/run new file mode 100755 index 0000000..556efdd --- /dev/null +++ b/examples/source-to-image/run @@ -0,0 +1,5 @@ +#!/bin/bash + +# Start up the notebook instance. + +exec start-notebook.py "$@" diff --git a/examples/source-to-image/save-artifacts b/examples/source-to-image/save-artifacts new file mode 100755 index 0000000..0ab29c8 --- /dev/null +++ b/examples/source-to-image/save-artifacts @@ -0,0 +1,3 @@ +#!/bin/bash + +tar cf - --files-from /dev/null diff --git a/examples/source-to-image/templates.json b/examples/source-to-image/templates.json new file mode 100644 index 0000000..aa67766 --- /dev/null +++ b/examples/source-to-image/templates.json @@ -0,0 +1,371 @@ +{ + "kind": "List", + "apiVersion": "v1", + "items": [ + { + "kind": "Template", + "apiVersion": "v1", + "metadata": { + "name": "jupyter-notebook-builder", + "annotations": { + "openshift.io/display-name": "Jupyter Notebook Builder", + "description": "Template for building Jupyter Notebook images with bundled notebooks and files.", + "iconClass": "icon-python", + "tags": "python,jupyter" + } + }, + "parameters": [ + { + "name": "IMAGE_NAME", + "value": "notebook", + "required": true + }, + { + "name": "BUILDER_IMAGE", + "value": "docker.io/jupyter/minimal-notebook:latest", + "required": true + }, + { + "name": "BUILDER_SCRIPTS", + "value": "https://raw.githubusercontent.com/jupyter/docker-stacks/main/examples/source-to-image", + "required": true + }, + { + "name": "GIT_REPOSITORY_URL", + "value": "", + "required": true + }, + { + "name": "GIT_REFERENCE", + "value": "main", + "required": true + }, + { + "name": "CONTEXT_DIR", + "value": "", + "required": false + } + ], + "objects": [ + { + "apiVersion": "v1", + "kind": "ImageStream", + "metadata": { + "name": "${IMAGE_NAME}", + "labels": { + "app": "${IMAGE_NAME}" + } + } + }, + { + "apiVersion": "v1", + "kind": "BuildConfig", + "metadata": { + "name": "${IMAGE_NAME}", + "labels": { + "app": "${IMAGE_NAME}" + } + }, + "spec": { + "output": { + "to": { + "kind": "ImageStreamTag", + "name": "${IMAGE_NAME}:latest" + } + }, + "resources": { + "limits": { + "memory": "1Gi" + } + }, + "source": { + "type": "Git", + "git": { + "uri": "${GIT_REPOSITORY_URL}", + "ref": "${GIT_REFERENCE}" + }, + "contextDir": "${CONTEXT_DIR}" + }, + "strategy": { + "type": "Source", + "sourceStrategy": { + "from": { + "kind": "DockerImage", + "name": "${BUILDER_IMAGE}" + }, + "scripts": "${BUILDER_SCRIPTS}" + } + }, + "triggers": [ + { + "type": "ConfigChange" + } + ] + } + } + ] + }, + { + "kind": "Template", + "apiVersion": "v1", + "metadata": { + "name": "jupyter-notebook-quickstart", + "annotations": { + "openshift.io/display-name": "Jupyter Notebook QuickStart", + "description": "Template for deploying Jupyter Notebook images with bundled notebooks and files.", + "iconClass": "icon-python", + "tags": "python,jupyter" + } + }, + "parameters": [ + { + "name": "APPLICATION_NAME", + "value": "notebook", + "required": true + }, + { + "name": "BUILDER_IMAGE", + "value": "docker.io/jupyter/minimal-notebook:latest", + "required": true + }, + { + "name": "BUILDER_SCRIPTS", + "value": "https://raw.githubusercontent.com/jupyter/docker-stacks/main/examples/source-to-image", + "required": true + }, + { + "name": "GIT_REPOSITORY_URL", + "value": "", + "required": true + }, + { + "name": "GIT_REFERENCE", + "value": "main", + "required": true + }, + { + "name": "CONTEXT_DIR", + "value": "", + "required": false + }, + { + "name": "NOTEBOOK_PASSWORD", + "from": "[a-f0-9]{32}", + "generate": "expression" + } + ], + "objects": [ + { + "apiVersion": "v1", + "kind": "ImageStream", + "metadata": { + "name": "${APPLICATION_NAME}", + "labels": { + "app": "${APPLICATION_NAME}" + } + } + }, + { + "apiVersion": "v1", + "kind": "BuildConfig", + "metadata": { + "name": "${APPLICATION_NAME}", + "labels": { + "app": "${APPLICATION_NAME}" + } + }, + "spec": { + "output": { + "to": { + "kind": "ImageStreamTag", + "name": "${APPLICATION_NAME}:latest" + } + }, + "resources": { + "limits": { + "memory": "1Gi" + } + }, + "source": { + "type": "Git", + "git": { + "uri": "${GIT_REPOSITORY_URL}", + "ref": "${GIT_REFERENCE}" + }, + "contextDir": "${CONTEXT_DIR}" + }, + "strategy": { + "type": "Source", + "sourceStrategy": { + "from": { + "kind": "DockerImage", + "name": "${BUILDER_IMAGE}" + }, + "scripts": "${BUILDER_SCRIPTS}" + } + }, + "triggers": [ + { + "type": "ConfigChange" + } + ] + } + }, + { + "kind": "ConfigMap", + "apiVersion": "v1", + "metadata": { + "name": "${APPLICATION_NAME}-cfg", + "labels": { + "app": "${APPLICATION_NAME}" + } + }, + "data": { + "jupyter_server_config.py": "import os\n\npassword = os.environ.get('JUPYTER_NOTEBOOK_PASSWORD')\n\nif password:\n from jupyter_server.auth import passwd\n c.ServerApp.password = passwd(password)\n del password\n del os.environ['JUPYTER_NOTEBOOK_PASSWORD']\n\nimage_config_file = '/home/jovyan/.jupyter/jupyter_server_config.py'\n\nif os.path.exists(image_config_file):\n with open(image_config_file) as fp:\n exec(compile(fp.read(), image_config_file, 'exec'), globals())\n" + } + }, + { + "kind": "DeploymentConfig", + "apiVersion": "v1", + "metadata": { + "name": "${APPLICATION_NAME}", + "labels": { + "app": "${APPLICATION_NAME}" + } + }, + "spec": { + "strategy": { + "type": "Recreate" + }, + "triggers": [ + { + "type": "ConfigChange" + }, + { + "type": "ImageChange", + "imageChangeParams": { + "automatic": true, + "containerNames": ["jupyter-notebook"], + "from": { + "kind": "ImageStreamTag", + "name": "${APPLICATION_NAME}:latest" + } + } + } + ], + "replicas": 1, + "selector": { + "app": "${APPLICATION_NAME}", + "deploymentconfig": "${APPLICATION_NAME}" + }, + "template": { + "metadata": { + "annotations": { + "alpha.image.policy.openshift.io/resolve-names": "*" + }, + "labels": { + "app": "${APPLICATION_NAME}", + "deploymentconfig": "${APPLICATION_NAME}" + } + }, + "spec": { + "containers": [ + { + "name": "jupyter-notebook", + "image": "${APPLICATION_NAME}:latest", + "command": [ + "start-notebook.py", + "--config=/etc/jupyter/openshift/jupyter_server_config.py", + "--no-browser", + "--ip=0.0.0.0" + ], + "ports": [ + { + "containerPort": 8888, + "protocol": "TCP" + } + ], + "env": [ + { + "name": "JUPYTER_NOTEBOOK_PASSWORD", + "value": "${NOTEBOOK_PASSWORD}" + } + ], + "volumeMounts": [ + { + "mountPath": "/etc/jupyter/openshift", + "name": "configs" + } + ] + } + ], + "automountServiceAccountToken": false, + "securityContext": { + "supplementalGroups": [100] + }, + "volumes": [ + { + "configMap": { + "name": "${APPLICATION_NAME}-cfg" + }, + "name": "configs" + } + ] + } + } + } + }, + { + "kind": "Route", + "apiVersion": "v1", + "metadata": { + "name": "${APPLICATION_NAME}", + "labels": { + "app": "${APPLICATION_NAME}" + } + }, + "spec": { + "host": "", + "to": { + "kind": "Service", + "name": "${APPLICATION_NAME}", + "weight": 100 + }, + "port": { + "targetPort": "8888-tcp" + }, + "tls": { + "termination": "edge", + "insecureEdgeTerminationPolicy": "Redirect" + } + } + }, + { + "kind": "Service", + "apiVersion": "v1", + "metadata": { + "name": "${APPLICATION_NAME}", + "labels": { + "app": "${APPLICATION_NAME}" + } + }, + "spec": { + "ports": [ + { + "name": "8888-tcp", + "protocol": "TCP", + "port": 8888, + "targetPort": 8888 + } + ], + "selector": { + "app": "${APPLICATION_NAME}", + "deploymentconfig": "${APPLICATION_NAME}" + }, + "type": "ClusterIP" + } + } + ] + } + ] +} diff --git a/images/all-spark-notebook/.dockerignore b/images/all-spark-notebook/.dockerignore new file mode 100644 index 0000000..9dea340 --- /dev/null +++ b/images/all-spark-notebook/.dockerignore @@ -0,0 +1,2 @@ +# Documentation +README.md diff --git a/images/all-spark-notebook/Dockerfile b/images/all-spark-notebook/Dockerfile new file mode 100644 index 0000000..1a97294 --- /dev/null +++ b/images/all-spark-notebook/Dockerfile @@ -0,0 +1,39 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +ARG REGISTRY=quay.io +ARG OWNER=jupyter +ARG BASE_CONTAINER=$REGISTRY/$OWNER/pyspark-notebook +FROM $BASE_CONTAINER + +LABEL maintainer="Jupyter Project " + +# Fix: https://github.com/hadolint/hadolint/wiki/DL4006 +# Fix: https://github.com/koalaman/shellcheck/wiki/SC3014 +SHELL ["/bin/bash", "-o", "pipefail", "-c"] + +USER root + +# RSpark config +ENV R_LIBS_USER "${SPARK_HOME}/R/lib" +RUN fix-permissions "${R_LIBS_USER}" + +# R pre-requisites +RUN apt-get update --yes && \ + apt-get install --yes --no-install-recommends \ + fonts-dejavu \ + gfortran \ + gcc && \ + apt-get clean && rm -rf /var/lib/apt/lists/* + +USER ${NB_UID} + +# R packages including IRKernel which gets installed globally. +RUN mamba install --yes \ + 'r-base' \ + 'r-ggplot2' \ + 'r-irkernel' \ + 'r-rcurl' \ + 'r-sparklyr' && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" diff --git a/images/all-spark-notebook/README.md b/images/all-spark-notebook/README.md new file mode 100644 index 0000000..1619e77 --- /dev/null +++ b/images/all-spark-notebook/README.md @@ -0,0 +1,15 @@ +# Jupyter Notebook Python, R, Spark Stack + +> **Images hosted on Docker Hub are no longer updated. Please, use [quay.io image](https://quay.io/repository/jupyter/all-spark-notebook)** + +[![docker pulls](https://img.shields.io/docker/pulls/jupyter/all-spark-notebook.svg)](https://hub.docker.com/r/jupyter/all-spark-notebook/) +[![docker stars](https://img.shields.io/docker/stars/jupyter/all-spark-notebook.svg)](https://hub.docker.com/r/jupyter/all-spark-notebook/) +[![image size](https://img.shields.io/docker/image-size/jupyter/all-spark-notebook/latest)](https://hub.docker.com/r/jupyter/all-spark-notebook/ "jupyter/all-spark-notebook image size") + +GitHub Actions in the project builds and pushes this image to the Registry. + +Please visit the project documentation site for help to use and contribute to this image and others. + +- [Jupyter Docker Stacks on ReadTheDocs](https://jupyter-docker-stacks.readthedocs.io/en/latest/index.html) +- [Selecting an Image :: Core Stacks :: jupyter/all-spark-notebook](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html#jupyter-all-spark-notebook) +- [Image Specifics :: Apache Spark](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/specifics.html#apache-spark) diff --git a/images/base-notebook/.dockerignore b/images/base-notebook/.dockerignore new file mode 100644 index 0000000..9dea340 --- /dev/null +++ b/images/base-notebook/.dockerignore @@ -0,0 +1,2 @@ +# Documentation +README.md diff --git a/images/base-notebook/Dockerfile b/images/base-notebook/Dockerfile new file mode 100644 index 0000000..07903b9 --- /dev/null +++ b/images/base-notebook/Dockerfile @@ -0,0 +1,77 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +ARG REGISTRY=quay.io +ARG OWNER=jupyter +ARG BASE_CONTAINER=$REGISTRY/$OWNER/docker-stacks-foundation +FROM $BASE_CONTAINER + +LABEL maintainer="Jupyter Project " + +# Fix: https://github.com/hadolint/hadolint/wiki/DL4006 +# Fix: https://github.com/koalaman/shellcheck/wiki/SC3014 +SHELL ["/bin/bash", "-o", "pipefail", "-c"] + +USER root + +# Install all OS dependencies for the Server that starts +# but lacks all features (e.g., download as all possible file formats) +RUN apt-get update --yes && \ + apt-get install --yes --no-install-recommends \ + # - Add necessary fonts for matplotlib/seaborn + # See https://github.com/jupyter/docker-stacks/pull/380 for details + fonts-liberation \ + # - `pandoc` is used to convert notebooks to html files + # it's not present in the aarch64 Ubuntu image, so we install it here + pandoc \ + # - `run-one` - a wrapper script that runs no more + # than one unique instance of some command with a unique set of arguments, + # we use `run-one-constantly` to support the `RESTARTABLE` option + run-one && \ + apt-get clean && rm -rf /var/lib/apt/lists/* + +USER ${NB_UID} + +# Install JupyterLab, Jupyter Notebook, JupyterHub and NBClassic +# Generate a Jupyter Server config +# Cleanup temporary files +# Correct permissions +# Do all this in a single RUN command to avoid duplicating all of the +# files across image layers when the permissions change +WORKDIR /tmp +RUN mamba install --yes \ + 'jupyterlab' \ + 'notebook' \ + 'jupyterhub' \ + 'nbclassic' && \ + jupyter server --generate-config && \ + mamba clean --all -f -y && \ + npm cache clean --force && \ + jupyter lab clean && \ + rm -rf "/home/${NB_USER}/.cache/yarn" && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" + +ENV JUPYTER_PORT=8888 +EXPOSE $JUPYTER_PORT + +# Configure container startup +CMD ["start-notebook.py"] + +# Copy local files as late as possible to avoid cache busting +COPY start-notebook.py start-notebook.sh start-singleuser.py start-singleuser.sh /usr/local/bin/ +COPY jupyter_server_config.py docker_healthcheck.py /etc/jupyter/ + +# Fix permissions on /etc/jupyter as root +USER root +RUN fix-permissions /etc/jupyter/ + +# HEALTHCHECK documentation: https://docs.docker.com/engine/reference/builder/#healthcheck +# This healtcheck works well for `lab`, `notebook`, `nbclassic`, `server`, and `retro` jupyter commands +# https://github.com/jupyter/docker-stacks/issues/915#issuecomment-1068528799 +HEALTHCHECK --interval=3s --timeout=1s --start-period=3s --retries=3 \ + CMD /etc/jupyter/docker_healthcheck.py || exit 1 + +# Switch back to jovyan to avoid accidental container runs as root +USER ${NB_UID} + +WORKDIR "${HOME}" diff --git a/images/base-notebook/README.md b/images/base-notebook/README.md new file mode 100644 index 0000000..6713599 --- /dev/null +++ b/images/base-notebook/README.md @@ -0,0 +1,14 @@ +# Base Jupyter Notebook Stack + +> **Images hosted on Docker Hub are no longer updated. Please, use [quay.io image](https://quay.io/repository/jupyter/base-notebook)** + +[![docker pulls](https://img.shields.io/docker/pulls/jupyter/base-notebook.svg)](https://hub.docker.com/r/jupyter/base-notebook/) +[![docker stars](https://img.shields.io/docker/stars/jupyter/base-notebook.svg)](https://hub.docker.com/r/jupyter/base-notebook/) +[![image size](https://img.shields.io/docker/image-size/jupyter/base-notebook/latest)](https://hub.docker.com/r/jupyter/base-notebook/ "jupyter/base-notebook image size") + +GitHub Actions in the project builds and pushes this image to the Registry. + +Please visit the project documentation site for help to use and contribute to this image and others. + +- [Jupyter Docker Stacks on ReadTheDocs](https://jupyter-docker-stacks.readthedocs.io/en/latest/index.html) +- [Selecting an Image :: Core Stacks :: jupyter/base-notebook](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html#jupyter-base-notebook) diff --git a/images/base-notebook/docker_healthcheck.py b/images/base-notebook/docker_healthcheck.py new file mode 100755 index 0000000..7dd3de0 --- /dev/null +++ b/images/base-notebook/docker_healthcheck.py @@ -0,0 +1,39 @@ +#!/usr/bin/env python3 +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import json +import os +import subprocess +from pathlib import Path + +import requests + +# Several operations below deliberately don't check for possible errors +# As this is a healthcheck, it should succeed or raise an exception on error + +# Docker runs healtchecks using an exec +# It uses the default user configured when running the image: root for the case of a custom NB_USER or jovyan for the case of the default image user. +# We manually change HOME to make `jupyter --runtime-dir` report a correct path +# More information: +result = subprocess.run( + ["jupyter", "--runtime-dir"], + check=True, + capture_output=True, + text=True, + env=dict(os.environ) | {"HOME": "/home/" + os.environ["NB_USER"]}, +) +runtime_dir = Path(result.stdout.rstrip()) + +json_file = next(runtime_dir.glob("*server-*.json")) + +url = json.loads(json_file.read_bytes())["url"] +url = url + "api" + +proxies = { + "http": "", + "https": "", +} + +r = requests.get(url, proxies=proxies, verify=False) # request without SSL verification +r.raise_for_status() +print(r.content) diff --git a/images/base-notebook/jupyter_server_config.py b/images/base-notebook/jupyter_server_config.py new file mode 100644 index 0000000..c0cca3a --- /dev/null +++ b/images/base-notebook/jupyter_server_config.py @@ -0,0 +1,58 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +# mypy: ignore-errors +import os +import stat +import subprocess +from pathlib import Path + +from jupyter_core.paths import jupyter_data_dir + +c = get_config() # noqa: F821 +c.ServerApp.ip = "0.0.0.0" +c.ServerApp.open_browser = False + +# to output both image/svg+xml and application/pdf plot formats in the notebook file +c.InlineBackend.figure_formats = {"png", "jpeg", "svg", "pdf"} + +# https://github.com/jupyter/notebook/issues/3130 +c.FileContentsManager.delete_to_trash = False + +# Generate a self-signed certificate +OPENSSL_CONFIG = """\ +[req] +distinguished_name = req_distinguished_name +[req_distinguished_name] +""" +if "GEN_CERT" in os.environ: + dir_name = Path(jupyter_data_dir()) + dir_name.mkdir(parents=True, exist_ok=True) + pem_file = dir_name / "notebook.pem" + + # Generate an openssl.cnf file to set the distinguished name + cnf_file = Path(os.getenv("CONDA_DIR", "/usr/lib")) / "ssl/openssl.cnf" + if not cnf_file.exists(): + cnf_file.write_text(OPENSSL_CONFIG) + + # Generate a certificate if one doesn't exist on a disk + subprocess.check_call( + [ + "openssl", + "req", + "-new", + "-newkey=rsa:2048", + "-days=365", + "-nodes", + "-x509", + "-subj=/C=XX/ST=XX/L=XX/O=generated/CN=generated", + f"-keyout={pem_file}", + f"-out={pem_file}", + ] + ) + # Restrict access to the file + pem_file.chmod(stat.S_IRUSR | stat.S_IWUSR) + c.ServerApp.certfile = str(pem_file) + +# Change default umask for all subprocesses of the Server if set in the environment +if "NB_UMASK" in os.environ: + os.umask(int(os.environ["NB_UMASK"], 8)) diff --git a/images/base-notebook/start-notebook.py b/images/base-notebook/start-notebook.py new file mode 100755 index 0000000..973da5a --- /dev/null +++ b/images/base-notebook/start-notebook.py @@ -0,0 +1,44 @@ +#!/usr/bin/env python +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import os +import shlex +import sys + +# If we are in a JupyterHub, we pass on to `start-singleuser.py` instead so it does the right thing +if "JUPYTERHUB_API_TOKEN" in os.environ: + print( + "WARNING: using start-singleuser.py instead of start-notebook.py to start a server associated with JupyterHub." + ) + command = ["/usr/local/bin/start-singleuser.py"] + sys.argv[1:] + os.execvp(command[0], command) + + +# Entrypoint is start.sh +command = [] + +# If we want to survive restarts, launch the command using `run-one-constantly` +if os.environ.get("RESTARTABLE") == "yes": + command.append("run-one-constantly") + +# We always launch a jupyter subcommand from this script +command.append("jupyter") + +# Launch the configured subcommand. +# Note that this should be a single string, so we don't split it. +# We default to `lab`. +jupyter_command = os.environ.get("DOCKER_STACKS_JUPYTER_CMD", "lab") +command.append(jupyter_command) + +# Append any optional NOTEBOOK_ARGS we were passed in. +# This is supposed to be multiple args passed on to the notebook command, +# so we split it correctly with shlex +if "NOTEBOOK_ARGS" in os.environ: + command += shlex.split(os.environ["NOTEBOOK_ARGS"]) + +# Pass through any other args we were passed on the command line +command += sys.argv[1:] + +# Execute the command! +print("Executing: " + " ".join(command)) +os.execvp(command[0], command) diff --git a/images/base-notebook/start-notebook.sh b/images/base-notebook/start-notebook.sh new file mode 100755 index 0000000..c47ebba --- /dev/null +++ b/images/base-notebook/start-notebook.sh @@ -0,0 +1,5 @@ +#!/bin/bash +# Shim to emit warning and call start-notebook.py +echo "WARNING: Use start-notebook.py instead" + +exec /usr/local/bin/start-notebook.py "$@" diff --git a/images/base-notebook/start-singleuser.py b/images/base-notebook/start-singleuser.py new file mode 100755 index 0000000..c80339f --- /dev/null +++ b/images/base-notebook/start-singleuser.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import os +import shlex +import sys + +# Entrypoint is start.sh +command = ["jupyterhub-singleuser"] + +# set default ip to 0.0.0.0 +if "--ip=" not in os.environ.get("NOTEBOOK_ARGS", ""): + command.append("--ip=0.0.0.0") + +# Append any optional NOTEBOOK_ARGS we were passed in. +# This is supposed to be multiple args passed on to the notebook command, +# so we split it correctly with shlex +if "NOTEBOOK_ARGS" in os.environ: + command += shlex.split(os.environ["NOTEBOOK_ARGS"]) + +# Pass any other args we have been passed through +command += sys.argv[1:] + +# Execute the command! +print("Executing: " + " ".join(command)) +os.execvp(command[0], command) diff --git a/images/base-notebook/start-singleuser.sh b/images/base-notebook/start-singleuser.sh new file mode 100755 index 0000000..ecf0e06 --- /dev/null +++ b/images/base-notebook/start-singleuser.sh @@ -0,0 +1,5 @@ +#!/bin/bash +# Shim to emit warning and call start-singleuser.py +echo "WARNING: Use start-singleuser.py instead" + +exec /usr/local/bin/start-singleuser.py "$@" diff --git a/images/datascience-notebook/.dockerignore b/images/datascience-notebook/.dockerignore new file mode 100644 index 0000000..9dea340 --- /dev/null +++ b/images/datascience-notebook/.dockerignore @@ -0,0 +1,2 @@ +# Documentation +README.md diff --git a/images/datascience-notebook/Dockerfile b/images/datascience-notebook/Dockerfile new file mode 100644 index 0000000..1d5f13a --- /dev/null +++ b/images/datascience-notebook/Dockerfile @@ -0,0 +1,63 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +ARG REGISTRY=quay.io +ARG OWNER=jupyter +ARG BASE_CONTAINER=$REGISTRY/$OWNER/scipy-notebook +FROM $BASE_CONTAINER + +LABEL maintainer="Jupyter Project " + +# Fix: https://github.com/hadolint/hadolint/wiki/DL4006 +# Fix: https://github.com/koalaman/shellcheck/wiki/SC3014 +SHELL ["/bin/bash", "-o", "pipefail", "-c"] + +USER root + +# R pre-requisites +RUN apt-get update --yes && \ + apt-get install --yes --no-install-recommends \ + fonts-dejavu \ + gfortran \ + gcc && \ + apt-get clean && rm -rf /var/lib/apt/lists/* + +# Julia dependencies +# install Julia packages in /opt/julia instead of ${HOME} +ENV JULIA_DEPOT_PATH=/opt/julia \ + JULIA_PKGDIR=/opt/julia + +# Setup Julia +RUN /opt/setup-scripts/setup_julia.py + +USER ${NB_UID} + +# Setup IJulia kernel & other packages +RUN /opt/setup-scripts/setup-julia-packages.bash + +# R packages including IRKernel which gets installed globally. +# r-e1071: dependency of the caret R package +RUN mamba install --yes \ + 'r-base' \ + 'r-caret' \ + 'r-crayon' \ + 'r-devtools' \ + 'r-e1071' \ + 'r-forecast' \ + 'r-hexbin' \ + 'r-htmltools' \ + 'r-htmlwidgets' \ + 'r-irkernel' \ + 'r-nycflights13' \ + 'r-randomforest' \ + 'r-rcurl' \ + 'r-rmarkdown' \ + 'r-rodbc' \ + 'r-rsqlite' \ + 'r-shiny' \ + 'r-tidymodels' \ + 'r-tidyverse' \ + 'rpy2' \ + 'unixodbc' && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" diff --git a/images/datascience-notebook/README.md b/images/datascience-notebook/README.md new file mode 100644 index 0000000..42f1e04 --- /dev/null +++ b/images/datascience-notebook/README.md @@ -0,0 +1,14 @@ +# Jupyter Notebook Data Science Stack + +> **Images hosted on Docker Hub are no longer updated. Please, use [quay.io image](https://quay.io/repository/jupyter/datascience-notebook)** + +[![docker pulls](https://img.shields.io/docker/pulls/jupyter/datascience-notebook.svg)](https://hub.docker.com/r/jupyter/datascience-notebook/) +[![docker stars](https://img.shields.io/docker/stars/jupyter/datascience-notebook.svg)](https://hub.docker.com/r/jupyter/datascience-notebook/) +[![image size](https://img.shields.io/docker/image-size/jupyter/datascience-notebook/latest)](https://hub.docker.com/r/jupyter/datascience-notebook/ "jupyter/datascience-notebook image size") + +GitHub Actions in the project builds and pushes this image to the Registry. + +Please visit the project documentation site for help to use and contribute to this image and others. + +- [Jupyter Docker Stacks on ReadTheDocs](https://jupyter-docker-stacks.readthedocs.io/en/latest/index.html) +- [Selecting an Image :: Core Stacks :: jupyter/datascience-notebook](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html#jupyter-datascience-notebook) diff --git a/images/docker-stacks-foundation/.dockerignore b/images/docker-stacks-foundation/.dockerignore new file mode 100644 index 0000000..9dea340 --- /dev/null +++ b/images/docker-stacks-foundation/.dockerignore @@ -0,0 +1,2 @@ +# Documentation +README.md diff --git a/images/docker-stacks-foundation/10activate-conda-env.sh b/images/docker-stacks-foundation/10activate-conda-env.sh new file mode 100755 index 0000000..ed7347f --- /dev/null +++ b/images/docker-stacks-foundation/10activate-conda-env.sh @@ -0,0 +1,8 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +# This registers the initialization code for the conda shell code +# It also activates default environment in the end, so we don't need to activate it manually +# Documentation: https://docs.conda.io/projects/conda/en/latest/dev-guide/deep-dives/activation.html +eval "$(conda shell.bash hook)" diff --git a/images/docker-stacks-foundation/Dockerfile b/images/docker-stacks-foundation/Dockerfile new file mode 100644 index 0000000..68450ac --- /dev/null +++ b/images/docker-stacks-foundation/Dockerfile @@ -0,0 +1,143 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +# Ubuntu 22.04 (jammy) +# https://hub.docker.com/_/ubuntu/tags?page=1&name=jammy +ARG ROOT_CONTAINER=ubuntu:22.04 + +FROM $ROOT_CONTAINER + +LABEL maintainer="Jupyter Project " +ARG NB_USER="jovyan" +ARG NB_UID="1000" +ARG NB_GID="100" + +# Fix: https://github.com/hadolint/hadolint/wiki/DL4006 +# Fix: https://github.com/koalaman/shellcheck/wiki/SC3014 +SHELL ["/bin/bash", "-o", "pipefail", "-c"] + +USER root + +# Install all OS dependencies for the 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 upgrade` is run to patch known vulnerabilities in system packages + # as the Ubuntu base image is rebuilt too seldom sometimes (less than once a month) + apt-get upgrade --yes && \ + apt-get install --yes --no-install-recommends \ + # - bzip2 is necessary to extract the micromamba executable. + bzip2 \ + ca-certificates \ + locales \ + sudo \ + # - `tini` is installed as a helpful container entrypoint, + # that reaps zombie processes and such of the actual executable we want to start + # See https://github.com/krallin/tini#why-tini for details + tini \ + wget && \ + apt-get clean && rm -rf /var/lib/apt/lists/* && \ + echo "en_US.UTF-8 UTF-8" > /etc/locale.gen && \ + locale-gen + +# Configure environment +ENV CONDA_DIR=/opt/conda \ + SHELL=/bin/bash \ + NB_USER="${NB_USER}" \ + NB_UID=${NB_UID} \ + NB_GID=${NB_GID} \ + LC_ALL=en_US.UTF-8 \ + LANG=en_US.UTF-8 \ + LANGUAGE=en_US.UTF-8 +ENV PATH="${CONDA_DIR}/bin:${PATH}" \ + HOME="/home/${NB_USER}" + +# Copy a script that we will use to correct permissions after running certain commands +COPY fix-permissions /usr/local/bin/fix-permissions +RUN chmod a+rx /usr/local/bin/fix-permissions + +# Enable prompt color in the skeleton .bashrc before creating the default NB_USER +# hadolint ignore=SC2016 +RUN sed -i 's/^#force_color_prompt=yes/force_color_prompt=yes/' /etc/skel/.bashrc && \ + # More information in: https://github.com/jupyter/docker-stacks/pull/2047 + # and docs: https://docs.conda.io/projects/conda/en/latest/dev-guide/deep-dives/activation.html + echo 'eval "$(conda shell.bash hook)"' >> /etc/skel/.bashrc + +# Create NB_USER with name jovyan user with UID=1000 and in the 'users' group +# and make sure these dirs are writable by the `users` group. +RUN echo "auth requisite pam_deny.so" >> /etc/pam.d/su && \ + sed -i.bak -e 's/^%admin/#%admin/' /etc/sudoers && \ + sed -i.bak -e 's/^%sudo/#%sudo/' /etc/sudoers && \ + useradd --no-log-init --create-home --shell /bin/bash --uid "${NB_UID}" --no-user-group "${NB_USER}" && \ + mkdir -p "${CONDA_DIR}" && \ + chown "${NB_USER}:${NB_GID}" "${CONDA_DIR}" && \ + chmod g+w /etc/passwd && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" + +USER ${NB_UID} + +# Pin the Python version here, or set it to "default" +ARG PYTHON_VERSION=3.11 + +# Setup work directory for backward-compatibility +RUN mkdir "/home/${NB_USER}/work" && \ + fix-permissions "/home/${NB_USER}" + +# Download and install Micromamba, and initialize the Conda prefix. +# +# Similar projects using Micromamba: +# - Micromamba-Docker: +# - repo2docker: +# Install Python, Mamba, and jupyter_core +# Cleanup temporary files and remove Micromamba +# Correct permissions +# Do all this in a single RUN command to avoid duplicating all of the +# files across image layers when the permissions change +COPY --chown="${NB_UID}:${NB_GID}" initial-condarc "${CONDA_DIR}/.condarc" +WORKDIR /tmp +RUN set -x && \ + arch=$(uname -m) && \ + if [ "${arch}" = "x86_64" ]; then \ + # Should be simpler, see + arch="64"; \ + fi && \ + # https://mamba.readthedocs.io/en/latest/installation/micromamba-installation.html#linux-and-macos + wget --progress=dot:giga -O - \ + "https://micro.mamba.pm/api/micromamba/linux-${arch}/latest" | tar -xvj bin/micromamba && \ + PYTHON_SPECIFIER="python=${PYTHON_VERSION}" && \ + if [[ "${PYTHON_VERSION}" == "default" ]]; then PYTHON_SPECIFIER="python"; fi && \ + # Install the packages + ./bin/micromamba install \ + --root-prefix="${CONDA_DIR}" \ + --prefix="${CONDA_DIR}" \ + --yes \ + "${PYTHON_SPECIFIER}" \ + 'mamba' \ + 'jupyter_core' && \ + rm -rf /tmp/bin/ && \ + # Pin major.minor version of python + # https://conda.io/projects/conda/en/latest/user-guide/tasks/manage-pkgs.html#preventing-packages-from-updating-pinning + mamba list --full-name 'python' | tail -1 | tr -s ' ' | cut -d ' ' -f 1,2 | sed 's/\.[^.]*$/.*/' >> "${CONDA_DIR}/conda-meta/pinned" && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" + +# Copy local files as late as possible to avoid cache busting +COPY run-hooks.sh start.sh /usr/local/bin/ + +# Configure container entrypoint +ENTRYPOINT ["tini", "-g", "--", "start.sh"] + +USER root + +# Create dirs for startup hooks +RUN mkdir /usr/local/bin/start-notebook.d && \ + mkdir /usr/local/bin/before-notebook.d + +COPY 10activate-conda-env.sh /usr/local/bin/before-notebook.d/ + +# Switch back to jovyan to avoid accidental container runs as root +USER ${NB_UID} + +WORKDIR "${HOME}" diff --git a/images/docker-stacks-foundation/README.md b/images/docker-stacks-foundation/README.md new file mode 100644 index 0000000..6665752 --- /dev/null +++ b/images/docker-stacks-foundation/README.md @@ -0,0 +1,14 @@ +# Foundation Jupyter Stack + +> **Images hosted on Docker Hub are no longer updated. Please, use [quay.io image](https://quay.io/repository/jupyter/docker-stacks-foundation)** + +[![docker pulls](https://img.shields.io/docker/pulls/jupyter/docker-stacks-foundation.svg)](https://hub.docker.com/r/jupyter/docker-stacks-foundation/) +[![docker stars](https://img.shields.io/docker/stars/jupyter/docker-stacks-foundation.svg)](https://hub.docker.com/r/jupyter/docker-stacks-foundation/) +[![image size](https://img.shields.io/docker/image-size/jupyter/docker-stacks-foundation/latest)](https://hub.docker.com/r/jupyter/docker-stacks-foundation/ "jupyter/docker-stacks-foundation image size") + +GitHub Actions in the project builds and pushes this image to the Registry. + +Please visit the project documentation site for help to use and contribute to this image and others. + +- [Jupyter Docker Stacks on ReadTheDocs](https://jupyter-docker-stacks.readthedocs.io/en/latest/index.html) +- [Selecting an Image :: Core Stacks :: jupyter/docker-stacks-foundation](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html#jupyter-docker-stacks-foundation) diff --git a/images/docker-stacks-foundation/fix-permissions b/images/docker-stacks-foundation/fix-permissions new file mode 100755 index 0000000..47b6d0e --- /dev/null +++ b/images/docker-stacks-foundation/fix-permissions @@ -0,0 +1,33 @@ +#!/bin/bash +# Set permissions on a directory +# After any installation, if a directory needs to be (human) user-writable, run this script on it. +# It will make everything in the directory owned by the group ${NB_GID} and writable by that group. +# Deployments that want to set a specific user id can preserve permissions +# by adding the `--group-add users` line to `docker run`. + +# Uses find to avoid touching files that already have the right permissions, +# which would cause a massive image explosion + +# Right permissions are: +# group=${NB_GID} +# AND permissions include group rwX (directory-execute) +# AND directories have setuid,setgid bits set + +set -e + +for d in "$@"; do + find "${d}" \ + ! \( \ + -group "${NB_GID}" \ + -a -perm -g+rwX \ + \) \ + -exec chgrp "${NB_GID}" -- {} \+ \ + -exec chmod g+rwX -- {} \+ + # setuid, setgid *on directories only* + find "${d}" \ + \( \ + -type d \ + -a ! -perm -6000 \ + \) \ + -exec chmod +6000 -- {} \+ +done diff --git a/images/docker-stacks-foundation/initial-condarc b/images/docker-stacks-foundation/initial-condarc new file mode 100644 index 0000000..383aad3 --- /dev/null +++ b/images/docker-stacks-foundation/initial-condarc @@ -0,0 +1,6 @@ +# Conda configuration see https://conda.io/projects/conda/en/latest/configuration.html + +auto_update_conda: false +show_channel_urls: true +channels: + - conda-forge diff --git a/images/docker-stacks-foundation/run-hooks.sh b/images/docker-stacks-foundation/run-hooks.sh new file mode 100755 index 0000000..15df23c --- /dev/null +++ b/images/docker-stacks-foundation/run-hooks.sh @@ -0,0 +1,46 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +# The run-hooks.sh script looks for *.sh scripts to source +# and executable files to run within a passed directory + +if [ "$#" -ne 1 ]; then + echo "Should pass exactly one directory" + return 1 +fi + +if [[ ! -d "${1}" ]]; then + echo "Directory ${1} doesn't exist or is not a directory" + return 1 +fi + +echo "Running hooks in: ${1} as uid: $(id -u) gid: $(id -g)" +for f in "${1}/"*; do + # Handling a case when the directory is empty + [ -e "${f}" ] || continue + case "${f}" in + *.sh) + echo "Sourcing shell script: ${f}" + # shellcheck disable=SC1090 + source "${f}" + # shellcheck disable=SC2181 + if [ $? -ne 0 ]; then + echo "${f} has failed, continuing execution" + fi + ;; + *) + if [ -x "${f}" ]; then + echo "Running executable: ${f}" + "${f}" + # shellcheck disable=SC2181 + if [ $? -ne 0 ]; then + echo "${f} has failed, continuing execution" + fi + else + echo "Ignoring non-executable: ${f}" + fi + ;; + esac +done +echo "Done running hooks in: ${1}" diff --git a/images/docker-stacks-foundation/start.sh b/images/docker-stacks-foundation/start.sh new file mode 100755 index 0000000..33d12d8 --- /dev/null +++ b/images/docker-stacks-foundation/start.sh @@ -0,0 +1,256 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +set -e + +# The _log function is used for everything this script wants to log. +# It will always log errors and warnings but can be silenced for other messages +# by setting the JUPYTER_DOCKER_STACKS_QUIET environment variable. +_log () { + if [[ "$*" == "ERROR:"* ]] || [[ "$*" == "WARNING:"* ]] || [[ "${JUPYTER_DOCKER_STACKS_QUIET}" == "" ]]; then + echo "$@" + fi +} +_log "Entered start.sh with args:" "$@" + +# A helper function to unset env vars listed in the value of the env var +# JUPYTER_ENV_VARS_TO_UNSET. +unset_explicit_env_vars () { + if [ -n "${JUPYTER_ENV_VARS_TO_UNSET}" ]; then + for env_var_to_unset in $(echo "${JUPYTER_ENV_VARS_TO_UNSET}" | tr ',' ' '); do + _log "Unset ${env_var_to_unset} due to JUPYTER_ENV_VARS_TO_UNSET" + unset "${env_var_to_unset}" + done + unset JUPYTER_ENV_VARS_TO_UNSET + fi +} + + +# Default to starting bash if no command was specified +if [ $# -eq 0 ]; then + cmd=( "bash" ) +else + cmd=( "$@" ) +fi + +# Backwards compatibility: `start.sh` is executed by default in ENTRYPOINT +# so it should no longer be specified in CMD +if [ "${_START_SH_EXECUTED}" = "1" ]; then + _log "WARNING: start.sh is the default ENTRYPOINT, do not include it in CMD" + _log "Executing the command:" "${cmd[@]}" + exec "${cmd[@]}" +else + export _START_SH_EXECUTED=1 +fi + + +# NOTE: This hook will run as the user the container was started with! +# shellcheck disable=SC1091 +source /usr/local/bin/run-hooks.sh /usr/local/bin/start-notebook.d + +# If the container started as the root user, then we have permission to refit +# the jovyan user, and ensure file permissions, grant sudo rights, and such +# things before we run the command passed to start.sh as the desired user +# (NB_USER). +# +if [ "$(id -u)" == 0 ]; then + # Environment variables: + # - NB_USER: the desired username and associated home folder + # - NB_UID: the desired user id + # - NB_GID: a group id we want our user to belong to + # - NB_GROUP: a group name we want for the group + # - GRANT_SUDO: a boolean ("1" or "yes") to grant the user sudo rights + # - CHOWN_HOME: a boolean ("1" or "yes") to chown the user's home folder + # - CHOWN_EXTRA: a comma-separated list of paths to chown + # - CHOWN_HOME_OPTS / CHOWN_EXTRA_OPTS: arguments to the chown commands + + # Refit the jovyan user to the desired user (NB_USER) + if id jovyan &> /dev/null; then + if ! usermod --home "/home/${NB_USER}" --login "${NB_USER}" jovyan 2>&1 | grep "no changes" > /dev/null; then + _log "Updated the jovyan user:" + _log "- username: jovyan -> ${NB_USER}" + _log "- home dir: /home/jovyan -> /home/${NB_USER}" + fi + elif ! id -u "${NB_USER}" &> /dev/null; then + _log "ERROR: Neither the jovyan user nor '${NB_USER}' exists. This could be the result of stopping and starting, the container with a different NB_USER environment variable." + exit 1 + fi + # Ensure the desired user (NB_USER) gets its desired user id (NB_UID) and is + # a member of the desired group (NB_GROUP, NB_GID) + if [ "${NB_UID}" != "$(id -u "${NB_USER}")" ] || [ "${NB_GID}" != "$(id -g "${NB_USER}")" ]; then + _log "Update ${NB_USER}'s UID:GID to ${NB_UID}:${NB_GID}" + # Ensure the desired group's existence + if [ "${NB_GID}" != "$(id -g "${NB_USER}")" ]; then + groupadd --force --gid "${NB_GID}" --non-unique "${NB_GROUP:-${NB_USER}}" + fi + # Recreate the desired user as we want it + userdel "${NB_USER}" + useradd --no-log-init --home "/home/${NB_USER}" --shell /bin/bash --uid "${NB_UID}" --gid "${NB_GID}" --groups 100 "${NB_USER}" + fi + # Update the home directory if the desired user (NB_USER) is root and the + # desired user id (NB_UID) is 0 and the desired group id (NB_GID) is 0. + if [ "${NB_USER}" = "root" ] && [ "${NB_UID}" = "$(id -u "${NB_USER}")" ] && [ "${NB_GID}" = "$(id -g "${NB_USER}")" ]; then + sed -i "s|/root|/home/root|g" /etc/passwd + # Do not preserve ownership in rootless mode + CP_OPTS="-a --no-preserve=ownership" + fi + + # Move or symlink the jovyan home directory to the desired user's home + # directory if it doesn't already exist, and update the current working + # directory to the new location if needed. + if [[ "${NB_USER}" != "jovyan" ]]; then + if [[ ! -e "/home/${NB_USER}" ]]; then + _log "Attempting to copy /home/jovyan to /home/${NB_USER}..." + mkdir "/home/${NB_USER}" + # shellcheck disable=SC2086 + if cp ${CP_OPTS:--a} /home/jovyan/. "/home/${NB_USER}/"; then + _log "Success!" + else + _log "Failed to copy data from /home/jovyan to /home/${NB_USER}!" + _log "Attempting to symlink /home/jovyan to /home/${NB_USER}..." + if ln -s /home/jovyan "/home/${NB_USER}"; then + _log "Success creating symlink!" + else + _log "ERROR: Failed copy data from /home/jovyan to /home/${NB_USER} or to create symlink!" + exit 1 + fi + fi + fi + # Ensure the current working directory is updated to the new path + if [[ "${PWD}/" == "/home/jovyan/"* ]]; then + new_wd="/home/${NB_USER}/${PWD:13}" + _log "Changing working directory to ${new_wd}" + cd "${new_wd}" + fi + fi + + # Optionally ensure the desired user gets filesystem ownership of its home + # folder and/or additional folders + if [[ "${CHOWN_HOME}" == "1" || "${CHOWN_HOME}" == "yes" ]]; then + _log "Ensuring /home/${NB_USER} is owned by ${NB_UID}:${NB_GID} ${CHOWN_HOME_OPTS:+(chown options: ${CHOWN_HOME_OPTS})}" + # shellcheck disable=SC2086 + chown ${CHOWN_HOME_OPTS} "${NB_UID}:${NB_GID}" "/home/${NB_USER}" + fi + if [ -n "${CHOWN_EXTRA}" ]; then + for extra_dir in $(echo "${CHOWN_EXTRA}" | tr ',' ' '); do + _log "Ensuring ${extra_dir} is owned by ${NB_UID}:${NB_GID} ${CHOWN_EXTRA_OPTS:+(chown options: ${CHOWN_EXTRA_OPTS})}" + # shellcheck disable=SC2086 + chown ${CHOWN_EXTRA_OPTS} "${NB_UID}:${NB_GID}" "${extra_dir}" + done + fi + + # Prepend ${CONDA_DIR}/bin to sudo secure_path + sed -r "s#Defaults\s+secure_path\s*=\s*\"?([^\"]+)\"?#Defaults secure_path=\"${CONDA_DIR}/bin:\1\"#" /etc/sudoers | grep secure_path > /etc/sudoers.d/path + + # Optionally grant passwordless sudo rights for the desired user + if [[ "${GRANT_SUDO}" == "1" || "${GRANT_SUDO}" == "yes" ]]; then + _log "Granting ${NB_USER} passwordless sudo rights!" + echo "${NB_USER} ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/added-by-start-script + fi + + # NOTE: This hook is run as the root user! + # shellcheck disable=SC1091 + source /usr/local/bin/run-hooks.sh /usr/local/bin/before-notebook.d + unset_explicit_env_vars + + _log "Running as ${NB_USER}:" "${cmd[@]}" + exec sudo --preserve-env --set-home --user "${NB_USER}" \ + LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" \ + PATH="${PATH}" \ + PYTHONPATH="${PYTHONPATH:-}" \ + "${cmd[@]}" + # Notes on how we ensure that the environment that this container is started + # with is preserved (except vars listed in JUPYTER_ENV_VARS_TO_UNSET) when + # we transition from running as root to running as NB_USER. + # + # - We use `sudo` to execute the command as NB_USER. What then + # happens to the environment will be determined by configuration in + # /etc/sudoers and /etc/sudoers.d/* as well as flags we pass to the sudo + # command. The behavior can be inspected with `sudo -V` run as root. + # + # ref: `man sudo` https://linux.die.net/man/8/sudo + # ref: `man sudoers` https://www.sudo.ws/docs/man/sudoers.man/ + # + # - We use the `--preserve-env` flag to pass through most environment + # variables, but understand that exceptions are caused by the sudoers + # configuration: `env_delete` and `env_check`. + # + # - We use the `--set-home` flag to set the HOME variable appropriately. + # + # - To reduce the default list of variables deleted by sudo, we could have + # used `env_delete` from /etc/sudoers. It has a higher priority than the + # `--preserve-env` flag and the `env_keep` configuration. + # + # - We preserve LD_LIBRARY_PATH, PATH and PYTHONPATH explicitly. Note however that sudo + # resolves `${cmd[@]}` using the "secure_path" variable we modified + # above in /etc/sudoers.d/path. Thus PATH is irrelevant to how the above + # sudo command resolves the path of `${cmd[@]}`. The PATH will be relevant + # for resolving paths of any subprocesses spawned by `${cmd[@]}`. + +# The container didn't start as the root user, so we will have to act as the +# user we started as. +else + # Warn about misconfiguration of: granting sudo rights + if [[ "${GRANT_SUDO}" == "1" || "${GRANT_SUDO}" == "yes" ]]; then + _log "WARNING: container must be started as root to grant sudo permissions!" + fi + + JOVYAN_UID="$(id -u jovyan 2>/dev/null)" # The default UID for the jovyan user + JOVYAN_GID="$(id -g jovyan 2>/dev/null)" # The default GID for the jovyan user + + # Attempt to ensure the user uid we currently run as has a named entry in + # the /etc/passwd file, as it avoids software crashing on hard assumptions + # on such entry. Writing to the /etc/passwd was allowed for the root group + # from the Dockerfile during the build. + # + # ref: https://github.com/jupyter/docker-stacks/issues/552 + if ! whoami &> /dev/null; then + _log "There is no entry in /etc/passwd for our UID=$(id -u). Attempting to fix..." + if [[ -w /etc/passwd ]]; then + _log "Renaming old jovyan user to nayvoj ($(id -u jovyan):$(id -g jovyan))" + + # We cannot use "sed --in-place" since sed tries to create a temp file in + # /etc/ and we may not have write access. Apply sed on our own temp file: + sed --expression="s/^jovyan:/nayvoj:/" /etc/passwd > /tmp/passwd + echo "${NB_USER}:x:$(id -u):$(id -g):,,,:/home/jovyan:/bin/bash" >> /tmp/passwd + cat /tmp/passwd > /etc/passwd + rm /tmp/passwd + + _log "Added new ${NB_USER} user ($(id -u):$(id -g)). Fixed UID!" + + if [[ "${NB_USER}" != "jovyan" ]]; then + _log "WARNING: user is ${NB_USER} but home is /home/jovyan. You must run as root to rename the home directory!" + fi + else + _log "WARNING: unable to fix missing /etc/passwd entry because we don't have write permission. Try setting gid=0 with \"--user=$(id -u):0\"." + fi + fi + + # Warn about misconfiguration of: desired username, user id, or group id. + # A misconfiguration occurs when the user modifies the default values of + # NB_USER, NB_UID, or NB_GID, but we cannot update those values because we + # are not root. + if [[ "${NB_USER}" != "jovyan" && "${NB_USER}" != "$(id -un)" ]]; then + _log "WARNING: container must be started as root to change the desired user's name with NB_USER=\"${NB_USER}\"!" + fi + if [[ "${NB_UID}" != "${JOVYAN_UID}" && "${NB_UID}" != "$(id -u)" ]]; then + _log "WARNING: container must be started as root to change the desired user's id with NB_UID=\"${NB_UID}\"!" + fi + if [[ "${NB_GID}" != "${JOVYAN_GID}" && "${NB_GID}" != "$(id -g)" ]]; then + _log "WARNING: container must be started as root to change the desired user's group id with NB_GID=\"${NB_GID}\"!" + fi + + # Warn if the user isn't able to write files to ${HOME} + if [[ ! -w /home/jovyan ]]; then + _log "WARNING: no write access to /home/jovyan. Try starting the container with group 'users' (100), e.g. using \"--group-add=users\"." + fi + + # NOTE: This hook is run as the user we started the container as! + # shellcheck disable=SC1091 + source /usr/local/bin/run-hooks.sh /usr/local/bin/before-notebook.d + unset_explicit_env_vars + + _log "Executing the command:" "${cmd[@]}" + exec "${cmd[@]}" +fi diff --git a/images/julia-notebook/.dockerignore b/images/julia-notebook/.dockerignore new file mode 100644 index 0000000..9dea340 --- /dev/null +++ b/images/julia-notebook/.dockerignore @@ -0,0 +1,2 @@ +# Documentation +README.md diff --git a/images/julia-notebook/Dockerfile b/images/julia-notebook/Dockerfile new file mode 100644 index 0000000..9dbfd7f --- /dev/null +++ b/images/julia-notebook/Dockerfile @@ -0,0 +1,27 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +ARG REGISTRY=quay.io +ARG OWNER=jupyter +ARG BASE_CONTAINER=$REGISTRY/$OWNER/minimal-notebook +FROM $BASE_CONTAINER + +LABEL maintainer="Jupyter Project " + +# Fix: https://github.com/hadolint/hadolint/wiki/DL4006 +# Fix: https://github.com/koalaman/shellcheck/wiki/SC3014 +SHELL ["/bin/bash", "-o", "pipefail", "-c"] + +USER root + +# Julia dependencies +# install Julia packages in /opt/julia instead of ${HOME} +ENV JULIA_DEPOT_PATH=/opt/julia \ + JULIA_PKGDIR=/opt/julia + +# Setup Julia +RUN /opt/setup-scripts/setup_julia.py + +USER ${NB_UID} + +# Setup IJulia kernel & other packages +RUN /opt/setup-scripts/setup-julia-packages.bash diff --git a/images/julia-notebook/README.md b/images/julia-notebook/README.md new file mode 100644 index 0000000..4672067 --- /dev/null +++ b/images/julia-notebook/README.md @@ -0,0 +1,14 @@ +# Jupyter Notebook Julia Stack + +> **Images hosted on Docker Hub are no longer updated. Please, use [quay.io image](https://quay.io/repository/jupyter/julia-notebook)** + +[![docker pulls](https://img.shields.io/docker/pulls/jupyter/julia-notebook.svg)](https://hub.docker.com/r/jupyter/julia-notebook/) +[![docker stars](https://img.shields.io/docker/stars/jupyter/julia-notebook.svg)](https://hub.docker.com/r/jupyter/julia-notebook/) +[![image size](https://img.shields.io/docker/image-size/jupyter/julia-notebook/latest)](https://hub.docker.com/r/jupyter/julia-notebook/ "jupyter/julia-notebook image size") + +GitHub Actions in the project builds and pushes this image to the Registry. + +Please visit the project documentation site for help to use and contribute to this image and others. + +- [Jupyter Docker Stacks on ReadTheDocs](https://jupyter-docker-stacks.readthedocs.io/en/latest/index.html) +- [Selecting an Image :: Core Stacks :: jupyter/julia-notebook](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html#jupyter-julia-notebook) diff --git a/images/minimal-notebook/.dockerignore b/images/minimal-notebook/.dockerignore new file mode 100644 index 0000000..9dea340 --- /dev/null +++ b/images/minimal-notebook/.dockerignore @@ -0,0 +1,2 @@ +# Documentation +README.md diff --git a/images/minimal-notebook/Dockerfile b/images/minimal-notebook/Dockerfile new file mode 100644 index 0000000..e77798c --- /dev/null +++ b/images/minimal-notebook/Dockerfile @@ -0,0 +1,50 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +ARG REGISTRY=quay.io +ARG OWNER=jupyter +ARG BASE_CONTAINER=$REGISTRY/$OWNER/base-notebook +FROM $BASE_CONTAINER + +LABEL maintainer="Jupyter Project " + +# Fix: https://github.com/hadolint/hadolint/wiki/DL4006 +# Fix: https://github.com/koalaman/shellcheck/wiki/SC3014 +SHELL ["/bin/bash", "-o", "pipefail", "-c"] + +USER root + +# Install all OS dependencies for a fully functional Server +RUN apt-get update --yes && \ + apt-get install --yes --no-install-recommends \ + # Common useful utilities + curl \ + git \ + nano-tiny \ + tzdata \ + unzip \ + vim-tiny \ + # git-over-ssh + openssh-client \ + # `less` is needed to run help in R + # see: https://github.com/jupyter/docker-stacks/issues/1588 + less \ + # `nbconvert` dependencies + # https://nbconvert.readthedocs.io/en/latest/install.html#installing-tex + texlive-xetex \ + texlive-fonts-recommended \ + texlive-plain-generic \ + # Enable clipboard on Linux host systems + xclip && \ + apt-get clean && rm -rf /var/lib/apt/lists/* + +# Create alternative for nano -> nano-tiny +RUN update-alternatives --install /usr/bin/nano nano /bin/nano-tiny 10 + +# Switch back to jovyan to avoid accidental container runs as root +USER ${NB_UID} + +# Add an R mimetype option to specify how the plot returns from R to the browser +COPY --chown=${NB_UID}:${NB_GID} Rprofile.site /opt/conda/lib/R/etc/ + +# Add setup scripts that may be used by downstream images or inherited images +COPY setup-scripts/ /opt/setup-scripts/ diff --git a/images/minimal-notebook/README.md b/images/minimal-notebook/README.md new file mode 100644 index 0000000..0d0f44f --- /dev/null +++ b/images/minimal-notebook/README.md @@ -0,0 +1,14 @@ +# Minimal Jupyter Notebook Stack + +> **Images hosted on Docker Hub are no longer updated. Please, use [quay.io image](https://quay.io/repository/jupyter/minimal-notebook)** + +[![docker pulls](https://img.shields.io/docker/pulls/jupyter/minimal-notebook.svg)](https://hub.docker.com/r/jupyter/minimal-notebook/) +[![docker stars](https://img.shields.io/docker/stars/jupyter/minimal-notebook.svg)](https://hub.docker.com/r/jupyter/minimal-notebook/) +[![image size](https://img.shields.io/docker/image-size/jupyter/minimal-notebook/latest)](https://hub.docker.com/r/jupyter/minimal-notebook/ "jupyter/minimal-notebook image size") + +GitHub Actions in the project builds and pushes this image to the Registry. + +Please visit the project documentation site for help to use and contribute to this image and others. + +- [Jupyter Docker Stacks on ReadTheDocs](https://jupyter-docker-stacks.readthedocs.io/en/latest/index.html) +- [Selecting an Image :: Core Stacks :: jupyter/minimal-notebook](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html#jupyter-minimal-notebook) diff --git a/images/minimal-notebook/Rprofile.site b/images/minimal-notebook/Rprofile.site new file mode 100644 index 0000000..3d6a93c --- /dev/null +++ b/images/minimal-notebook/Rprofile.site @@ -0,0 +1,4 @@ +# Add R mimetype to specify how the plot returns from R to the browser. +# https://notebook.community/andrie/jupyter-notebook-samples/Changing%20R%20plot%20options%20in%20Jupyter + +options(jupyter.plot_mimetypes = c('text/plain', 'image/png', 'image/jpeg', 'image/svg+xml', 'application/pdf')) diff --git a/images/minimal-notebook/setup-scripts/activate_notebook_custom_env.py b/images/minimal-notebook/setup-scripts/activate_notebook_custom_env.py new file mode 100755 index 0000000..4d5da9b --- /dev/null +++ b/images/minimal-notebook/setup-scripts/activate_notebook_custom_env.py @@ -0,0 +1,24 @@ +#!/usr/bin/env python3 +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import json +import os +import sys +from pathlib import Path + +env_name = sys.argv[1] +CONDA_DIR = os.environ["CONDA_DIR"] + +file = Path.home() / f".local/share/jupyter/kernels/{env_name}/kernel.json" +content = json.loads(file.read_text()) +content["env"] = { + "XML_CATALOG_FILES": "", + "PATH": f"{CONDA_DIR}/envs/{env_name}/bin:$PATH", + "CONDA_PREFIX": f"{CONDA_DIR}/envs/{env_name}", + "CONDA_PROMPT_MODIFIER": f"({env_name}) ", + "CONDA_SHLVL": "2", + "CONDA_DEFAULT_ENV": env_name, + "CONDA_PREFIX_1": CONDA_DIR, +} + +file.write_text(json.dumps(content, indent=1)) diff --git a/images/minimal-notebook/setup-scripts/setup-julia-packages.bash b/images/minimal-notebook/setup-scripts/setup-julia-packages.bash new file mode 100755 index 0000000..5e8f7e8 --- /dev/null +++ b/images/minimal-notebook/setup-scripts/setup-julia-packages.bash @@ -0,0 +1,55 @@ +#!/bin/bash +set -exuo pipefail +# Requirements: +# - Run as a non-root user +# - The JULIA_PKGDIR environment variable is set +# - Julia is already set up, with the setup_julia.py command + + +# If we don't specify what CPUs the precompilation should be done for, it's +# *only* done for the target of the host doing the compilation. When the +# container runs on a host that's the same architecture, but a *different* +# generation of CPU than what the build host was, the precompilation is useless +# and Julia takes a long long time to start up. This specific multitarget comes +# from https://github.com/JuliaCI/julia-buildkite/blob/70bde73f6cb17d4381b62236fc2d96b1c7acbba7/utilities/build_envs.sh#L20-L76, +# and may need to be updated as new CPU generations come out. +# If the architecture the container runs on is different, +# precompilation may still have to be re-done on first startup - but this +# *should* catch most of the issues. See +# https://github.com/jupyter/docker-stacks/issues/2015 for more information +if [ "$(uname -m)" == "x86_64" ]; then + # See https://github.com/JuliaCI/julia-buildkite/blob/70bde73f6cb17d4381b62236fc2d96b1c7acbba7/utilities/build_envs.sh#L24 + # for an explanation of these options + export JULIA_CPU_TARGET="generic;sandybridge,-xsaveopt,clone_all;haswell,-rdrnd,base(1)" +elif [ "$(uname -m)" == "aarch64" ]; then + # See https://github.com/JuliaCI/julia-buildkite/blob/70bde73f6cb17d4381b62236fc2d96b1c7acbba7/utilities/build_envs.sh#L54 + # for an explanation of these options + export JULIA_CPU_TARGET="generic;cortex-a57;thunderx2t99;carmel" +fi + +# Install base Julia packages +julia -e ' +import Pkg; +Pkg.update(); +Pkg.add([ + "HDF5", + "IJulia", + "Pluto" +]); +Pkg.precompile(); +' + +# Move the kernelspec out of ${HOME} to the system share location. +# Avoids problems with runtime UID change not taking effect properly +# on the .local folder in the jovyan home dir. +mv "${HOME}/.local/share/jupyter/kernels/julia"* "${CONDA_DIR}/share/jupyter/kernels/" +chmod -R go+rx "${CONDA_DIR}/share/jupyter" +rm -rf "${HOME}/.local" +fix-permissions "${JULIA_PKGDIR}" "${CONDA_DIR}/share/jupyter" + +# Install jupyter-pluto-proxy to get Pluto to work on JupyterHub +mamba install --yes \ + 'jupyter-pluto-proxy' && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" diff --git a/images/minimal-notebook/setup-scripts/setup_julia.py b/images/minimal-notebook/setup-scripts/setup_julia.py new file mode 100755 index 0000000..114e64c --- /dev/null +++ b/images/minimal-notebook/setup-scripts/setup_julia.py @@ -0,0 +1,97 @@ +#!/usr/bin/env python3 +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +# Requirements: +# - Run as the root user +# - The JULIA_PKGDIR environment variable is set + +import logging +import os +import platform +import shutil +import subprocess +from pathlib import Path + +import requests + +LOGGER = logging.getLogger(__name__) + + +def unify_aarch64(platform: str) -> str: + """ + Renames arm64->aarch64 to support local builds on on aarch64 Macs + """ + return { + "aarch64": "aarch64", + "arm64": "aarch64", + "x86_64": "x86_64", + }[platform] + + +def get_latest_julia_url() -> tuple[str, str]: + """ + Get the last stable version of Julia + Based on: https://github.com/JuliaLang/www.julialang.org/issues/878#issuecomment-749234813 + """ + LOGGER.info("Downloading Julia versions information") + versions = requests.get( + "https://julialang-s3.julialang.org/bin/versions.json" + ).json() + stable_versions = {k: v for k, v in versions.items() if v["stable"]} + # Compare versions semantically + latest_stable_version = max( + stable_versions, key=lambda ver: [int(sub_ver) for sub_ver in ver.split(".")] + ) + latest_version_files = stable_versions[latest_stable_version]["files"] + triplet = unify_aarch64(platform.machine()) + "-linux-gnu" + file_info = [vf for vf in latest_version_files if vf["triplet"] == triplet][0] + LOGGER.info(f"Latest version: {file_info['version']} url: {file_info['url']}") + return file_info["url"], file_info["version"] + + +def download_julia(julia_url: str) -> None: + """ + Downloads and unpacks julia + The resulting julia directory is "/opt/julia-VERSION/" + """ + LOGGER.info("Downloading and unpacking Julia") + tmp_file = Path("/tmp/julia.tar.gz") + subprocess.check_call( + ["curl", "--progress-bar", "--location", "--output", tmp_file, julia_url] + ) + shutil.unpack_archive(tmp_file, "/opt/") + tmp_file.unlink() + + +def configure_julia(julia_version: str) -> None: + """ + Creates /usr/local/bin/julia symlink + Make Julia aware of conda libraries + Creates a directory for Julia user libraries + """ + LOGGER.info("Configuring Julia") + # Link Julia installed version to /usr/local/bin, so julia launches it + subprocess.check_call( + ["ln", "-fs", f"/opt/julia-{julia_version}/bin/julia", "/usr/local/bin/julia"] + ) + + # Tell Julia where conda libraries are + Path("/etc/julia").mkdir() + Path("/etc/julia/juliarc.jl").write_text( + f'push!(Libdl.DL_LOAD_PATH, "{os.environ["CONDA_DIR"]}/lib")\n' + ) + + # Create JULIA_PKGDIR, where user libraries are installed + JULIA_PKGDIR = Path(os.environ["JULIA_PKGDIR"]) + JULIA_PKGDIR.mkdir() + subprocess.check_call(["chown", os.environ["NB_USER"], JULIA_PKGDIR]) + subprocess.check_call(["fix-permissions", JULIA_PKGDIR]) + + +if __name__ == "__main__": + logging.basicConfig(level=logging.INFO) + + julia_url, julia_version = get_latest_julia_url() + download_julia(julia_url=julia_url) + configure_julia(julia_version=julia_version) diff --git a/images/pyspark-notebook/.dockerignore b/images/pyspark-notebook/.dockerignore new file mode 100644 index 0000000..9dea340 --- /dev/null +++ b/images/pyspark-notebook/.dockerignore @@ -0,0 +1,2 @@ +# Documentation +README.md diff --git a/images/pyspark-notebook/Dockerfile b/images/pyspark-notebook/Dockerfile new file mode 100644 index 0000000..c9c9326 --- /dev/null +++ b/images/pyspark-notebook/Dockerfile @@ -0,0 +1,73 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +ARG REGISTRY=quay.io +ARG OWNER=jupyter +ARG BASE_CONTAINER=$REGISTRY/$OWNER/scipy-notebook +FROM $BASE_CONTAINER + +LABEL maintainer="Jupyter Project " + +# Fix: https://github.com/hadolint/hadolint/wiki/DL4006 +# Fix: https://github.com/koalaman/shellcheck/wiki/SC3014 +SHELL ["/bin/bash", "-o", "pipefail", "-c"] + +USER root + +# Spark dependencies +# Default values can be overridden at build time +# (ARGS are in lowercase to distinguish them from ENV) +ARG openjdk_version="17" + +RUN apt-get update --yes && \ + apt-get install --yes --no-install-recommends \ + "openjdk-${openjdk_version}-jre-headless" \ + ca-certificates-java && \ + apt-get clean && rm -rf /var/lib/apt/lists/* + +# If spark_version is not set, latest stable Spark will be installed +ARG spark_version +ARG hadoop_version="3" +# If scala_version is not set, Spark without Scala will be installed +ARG scala_version +# URL to use for Spark downloads +# You need to use https://archive.apache.org/dist/spark/ website if you want to download old Spark versions +# But it seems to be slower, that's why we use the recommended site for download +ARG spark_download_url="https://dlcdn.apache.org/spark/" + +ENV SPARK_HOME=/usr/local/spark +ENV PATH="${PATH}:${SPARK_HOME}/bin" +ENV SPARK_OPTS="--driver-java-options=-Xms1024M --driver-java-options=-Xmx4096M --driver-java-options=-Dlog4j.logLevel=info" + +COPY setup_spark.py /opt/setup-scripts/ + +# Setup Spark +RUN /opt/setup-scripts/setup_spark.py \ + --spark-version="${spark_version}" \ + --hadoop-version="${hadoop_version}" \ + --scala-version="${scala_version}" \ + --spark-download-url="${spark_download_url}" + +# Configure IPython system-wide +COPY ipython_kernel_config.py "/etc/ipython/" +RUN fix-permissions "/etc/ipython/" + +USER ${NB_UID} + +# Install pyarrow +# NOTE: It's important to ensure compatibility between Pandas versions. +# The pandas version in this Dockerfile should match the version +# on which the Pandas API for Spark is built. +# To find the right version: +# 1. Check out the Spark branch you are on: +# 2. Find the pandas version in the file `dev/infra/Dockerfile`. +RUN mamba install --yes \ + 'grpcio-status' \ + 'grpcio' \ + 'pandas=2.0.3' \ + 'pyarrow' && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" + +WORKDIR "${HOME}" +EXPOSE 4040 diff --git a/images/pyspark-notebook/README.md b/images/pyspark-notebook/README.md new file mode 100644 index 0000000..c1c5e9a --- /dev/null +++ b/images/pyspark-notebook/README.md @@ -0,0 +1,15 @@ +# Jupyter Notebook Python, Spark Stack + +> **Images hosted on Docker Hub are no longer updated. Please, use [quay.io image](https://quay.io/repository/jupyter/pyspark-notebook)** + +[![docker pulls](https://img.shields.io/docker/pulls/jupyter/pyspark-notebook.svg)](https://hub.docker.com/r/jupyter/pyspark-notebook/) +[![docker stars](https://img.shields.io/docker/stars/jupyter/pyspark-notebook.svg)](https://hub.docker.com/r/jupyter/pyspark-notebook/) +[![image size](https://img.shields.io/docker/image-size/jupyter/pyspark-notebook/latest)](https://hub.docker.com/r/jupyter/pyspark-notebook/ "jupyter/pyspark-notebook image size") + +GitHub Actions in the project builds and pushes this image to the Registry. + +Please visit the project documentation site for help to use and contribute to this image and others. + +- [Jupyter Docker Stacks on ReadTheDocs](https://jupyter-docker-stacks.readthedocs.io/en/latest/index.html) +- [Selecting an Image :: Core Stacks :: jupyter/pyspark-notebook](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html#jupyter-pyspark-notebook) +- [Image Specifics :: Apache Spark](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/specifics.html#apache-spark) diff --git a/images/pyspark-notebook/ipython_kernel_config.py b/images/pyspark-notebook/ipython_kernel_config.py new file mode 100644 index 0000000..921e6fa --- /dev/null +++ b/images/pyspark-notebook/ipython_kernel_config.py @@ -0,0 +1,13 @@ +# Configuration file for ipython-kernel. +# See + +# With IPython >= 6.0.0, all outputs to stdout/stderr are captured. +# It is the case for subprocesses and output of compiled libraries like Spark. +# Those logs now both head to notebook logs and in notebooks outputs. +# Logs are particularly verbose with Spark, that is why we turn them off through this flag. +# + +# Attempt to capture and forward low-level output, e.g. produced by Extension libraries. +# Default: True +# type:ignore +c.IPKernelApp.capture_fd_output = False # noqa: F821 diff --git a/images/pyspark-notebook/setup_spark.py b/images/pyspark-notebook/setup_spark.py new file mode 100755 index 0000000..a494b83 --- /dev/null +++ b/images/pyspark-notebook/setup_spark.py @@ -0,0 +1,123 @@ +#!/usr/bin/env python3 +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +# Requirements: +# - Run as the root user +# - Required env variable: SPARK_HOME + +import argparse +import logging +import os +import subprocess +from pathlib import Path + +import requests +from bs4 import BeautifulSoup + +LOGGER = logging.getLogger(__name__) + + +def get_all_refs(url: str) -> list[str]: + """ + Get all the references for a given webpage + """ + resp = requests.get(url) + soup = BeautifulSoup(resp.text, "html.parser") + return [a["href"] for a in soup.find_all("a", href=True)] + + +def get_latest_spark_version() -> str: + """ + Returns the last stable version of Spark using spark archive + """ + LOGGER.info("Downloading Spark versions information") + all_refs = get_all_refs("https://archive.apache.org/dist/spark/") + stable_versions = [ + ref.removeprefix("spark-").removesuffix("/") + for ref in all_refs + if ref.startswith("spark-") and "incubating" not in ref and "preview" not in ref + ] + # Compare versions semantically + latest_version = max( + stable_versions, key=lambda ver: [int(sub_ver) for sub_ver in ver.split(".")] + ) + LOGGER.info(f"Latest version: {latest_version}") + return latest_version + + +def download_spark( + spark_version: str, + hadoop_version: str, + scala_version: str, + spark_download_url: Path, +) -> str: + """ + Downloads and unpacks spark + The resulting spark directory name is returned + """ + LOGGER.info("Downloading and unpacking Spark") + spark_dir_name = f"spark-{spark_version}-bin-hadoop{hadoop_version}" + if scala_version: + spark_dir_name += f"-scala{scala_version}" + LOGGER.info(f"Spark directory name: {spark_dir_name}") + spark_url = spark_download_url / f"spark-{spark_version}" / f"{spark_dir_name}.tgz" + + tmp_file = Path("/tmp/spark.tar.gz") + subprocess.check_call( + ["curl", "--progress-bar", "--location", "--output", tmp_file, spark_url] + ) + subprocess.check_call( + [ + "tar", + "xzf", + tmp_file, + "-C", + "/usr/local", + "--owner", + "root", + "--group", + "root", + "--no-same-owner", + ] + ) + tmp_file.unlink() + return spark_dir_name + + +def configure_spark(spark_dir_name: str, spark_home: Path) -> None: + """ + Creates a ${SPARK_HOME} symlink to a versioned spark directory + Creates a 10spark-config.sh symlink to source PYTHONPATH automatically + """ + LOGGER.info("Configuring Spark") + subprocess.check_call(["ln", "-s", f"/usr/local/{spark_dir_name}", spark_home]) + + # Add a link in the before_notebook hook in order to source PYTHONPATH automatically + CONFIG_SCRIPT = "/usr/local/bin/before-notebook.d/10spark-config.sh" + subprocess.check_call( + ["ln", "-s", spark_home / "sbin/spark-config.sh", CONFIG_SCRIPT] + ) + + +if __name__ == "__main__": + logging.basicConfig(level=logging.INFO) + + arg_parser = argparse.ArgumentParser() + arg_parser.add_argument("--spark-version", required=True) + arg_parser.add_argument("--hadoop-version", required=True) + arg_parser.add_argument("--scala-version", required=True) + arg_parser.add_argument("--spark-download-url", type=Path, required=True) + args = arg_parser.parse_args() + + args.spark_version = args.spark_version or get_latest_spark_version() + + spark_dir_name = download_spark( + spark_version=args.spark_version, + hadoop_version=args.hadoop_version, + scala_version=args.scala_version, + spark_download_url=args.spark_download_url, + ) + configure_spark( + spark_dir_name=spark_dir_name, spark_home=Path(os.environ["SPARK_HOME"]) + ) diff --git a/images/pytorch-notebook/.dockerignore b/images/pytorch-notebook/.dockerignore new file mode 100644 index 0000000..9dea340 --- /dev/null +++ b/images/pytorch-notebook/.dockerignore @@ -0,0 +1,2 @@ +# Documentation +README.md diff --git a/images/pytorch-notebook/Dockerfile b/images/pytorch-notebook/Dockerfile new file mode 100644 index 0000000..f1a5c54 --- /dev/null +++ b/images/pytorch-notebook/Dockerfile @@ -0,0 +1,21 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +ARG REGISTRY=quay.io +ARG OWNER=jupyter +ARG BASE_CONTAINER=$REGISTRY/$OWNER/scipy-notebook +FROM $BASE_CONTAINER + +LABEL maintainer="Jupyter Project " + +# Fix: https://github.com/hadolint/hadolint/wiki/DL4006 +# Fix: https://github.com/koalaman/shellcheck/wiki/SC3014 +SHELL ["/bin/bash", "-o", "pipefail", "-c"] + +# Install PyTorch with pip +# hadolint ignore=DL3013 +RUN pip install --no-cache-dir --index-url 'https://download.pytorch.org/whl/cpu' \ + 'torch' \ + 'torchvision' \ + 'torchaudio' && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" diff --git a/images/pytorch-notebook/README.md b/images/pytorch-notebook/README.md new file mode 100644 index 0000000..72cc65c --- /dev/null +++ b/images/pytorch-notebook/README.md @@ -0,0 +1,8 @@ +# Jupyter Notebook Deep Learning Stack + +GitHub Actions in the project builds and pushes this image to the Registry. + +Please visit the project documentation site for help to use and contribute to this image and others. + +- [Jupyter Docker Stacks on ReadTheDocs](https://jupyter-docker-stacks.readthedocs.io/en/latest/index.html) +- [Selecting an Image :: Core Stacks :: jupyter/pytorch-notebook](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html#jupyter-pytorch-notebook) diff --git a/images/r-notebook/.dockerignore b/images/r-notebook/.dockerignore new file mode 100644 index 0000000..9dea340 --- /dev/null +++ b/images/r-notebook/.dockerignore @@ -0,0 +1,2 @@ +# Documentation +README.md diff --git a/images/r-notebook/Dockerfile b/images/r-notebook/Dockerfile new file mode 100644 index 0000000..bb7f095 --- /dev/null +++ b/images/r-notebook/Dockerfile @@ -0,0 +1,54 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +ARG REGISTRY=quay.io +ARG OWNER=jupyter +ARG BASE_CONTAINER=$REGISTRY/$OWNER/minimal-notebook +FROM $BASE_CONTAINER + +LABEL maintainer="Jupyter Project " + +# Fix: https://github.com/hadolint/hadolint/wiki/DL4006 +# Fix: https://github.com/koalaman/shellcheck/wiki/SC3014 +SHELL ["/bin/bash", "-o", "pipefail", "-c"] + +USER root + +# R pre-requisites +RUN apt-get update --yes && \ + apt-get install --yes --no-install-recommends \ + fonts-dejavu \ + unixodbc \ + unixodbc-dev \ + r-cran-rodbc \ + gfortran \ + gcc && \ + apt-get clean && rm -rf /var/lib/apt/lists/* + +USER ${NB_UID} + +# R packages including IRKernel which gets installed globally. +# r-e1071: dependency of the caret R package +RUN mamba install --yes \ + 'r-base' \ + 'r-caret' \ + 'r-crayon' \ + 'r-devtools' \ + 'r-e1071' \ + 'r-forecast' \ + 'r-hexbin' \ + 'r-htmltools' \ + 'r-htmlwidgets' \ + 'r-irkernel' \ + 'r-nycflights13' \ + 'r-randomforest' \ + 'r-rcurl' \ + 'r-rmarkdown' \ + 'r-rodbc' \ + 'r-rsqlite' \ + 'r-shiny' \ + 'r-tidymodels' \ + 'r-tidyverse' \ + 'unixodbc' && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" diff --git a/images/r-notebook/README.md b/images/r-notebook/README.md new file mode 100644 index 0000000..4d5fc89 --- /dev/null +++ b/images/r-notebook/README.md @@ -0,0 +1,14 @@ +# Jupyter Notebook R Stack + +> **Images hosted on Docker Hub are no longer updated. Please, use [quay.io image](https://quay.io/repository/jupyter/r-notebook)** + +[![docker pulls](https://img.shields.io/docker/pulls/jupyter/r-notebook.svg)](https://hub.docker.com/r/jupyter/r-notebook/) +[![docker stars](https://img.shields.io/docker/stars/jupyter/r-notebook.svg)](https://hub.docker.com/r/jupyter/r-notebook/) +[![image size](https://img.shields.io/docker/image-size/jupyter/r-notebook/latest)](https://hub.docker.com/r/jupyter/r-notebook/ "jupyter/r-notebook image size") + +GitHub Actions in the project builds and pushes this image to the Registry. + +Please visit the project documentation site for help to use and contribute to this image and others. + +- [Jupyter Docker Stacks on ReadTheDocs](https://jupyter-docker-stacks.readthedocs.io/en/latest/index.html) +- [Selecting an Image :: Core Stacks :: jupyter/r-notebook](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html#jupyter-r-notebook) diff --git a/images/scipy-notebook/.dockerignore b/images/scipy-notebook/.dockerignore new file mode 100644 index 0000000..9dea340 --- /dev/null +++ b/images/scipy-notebook/.dockerignore @@ -0,0 +1,2 @@ +# Documentation +README.md diff --git a/images/scipy-notebook/Dockerfile b/images/scipy-notebook/Dockerfile new file mode 100644 index 0000000..1c8003d --- /dev/null +++ b/images/scipy-notebook/Dockerfile @@ -0,0 +1,79 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +ARG REGISTRY=quay.io +ARG OWNER=jupyter +ARG BASE_CONTAINER=$REGISTRY/$OWNER/minimal-notebook +FROM $BASE_CONTAINER + +LABEL maintainer="Jupyter Project " + +# Fix: https://github.com/hadolint/hadolint/wiki/DL4006 +# Fix: https://github.com/koalaman/shellcheck/wiki/SC3014 +SHELL ["/bin/bash", "-o", "pipefail", "-c"] + +USER root + +RUN apt-get update --yes && \ + apt-get install --yes --no-install-recommends \ + # for cython: https://cython.readthedocs.io/en/latest/src/quickstart/install.html + build-essential \ + # for latex labels + cm-super \ + dvipng \ + # for matplotlib anim + ffmpeg && \ + apt-get clean && rm -rf /var/lib/apt/lists/* + +USER ${NB_UID} + +# Install Python 3 packages +RUN mamba install --yes \ + 'altair' \ + 'beautifulsoup4' \ + 'bokeh' \ + 'bottleneck' \ + 'cloudpickle' \ + 'conda-forge::blas=*=openblas' \ + 'cython' \ + 'dask' \ + 'dill' \ + 'h5py' \ + 'ipympl'\ + 'ipywidgets' \ + 'jupyterlab-git' \ + 'matplotlib-base' \ + 'numba' \ + 'numexpr' \ + 'openpyxl' \ + 'pandas' \ + 'patsy' \ + 'protobuf' \ + 'pytables' \ + 'scikit-image' \ + 'scikit-learn' \ + 'scipy' \ + 'seaborn' \ + 'sqlalchemy' \ + 'statsmodels' \ + 'sympy' \ + 'widgetsnbextension'\ + 'xlrd' && \ + mamba clean --all -f -y && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" + +# Install facets package which does not have a `pip` or `conda-forge` package at the moment +WORKDIR /tmp +RUN git clone https://github.com/PAIR-code/facets && \ + jupyter nbclassic-extension install facets/facets-dist/ --sys-prefix && \ + rm -rf /tmp/facets && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" + +# Import matplotlib the first time to build the font cache +RUN MPLBACKEND=Agg python -c "import matplotlib.pyplot" && \ + fix-permissions "/home/${NB_USER}" + +USER ${NB_UID} + +WORKDIR "${HOME}" diff --git a/images/scipy-notebook/README.md b/images/scipy-notebook/README.md new file mode 100644 index 0000000..68d56ec --- /dev/null +++ b/images/scipy-notebook/README.md @@ -0,0 +1,14 @@ +# Jupyter Notebook Scientific Python Stack + +> **Images hosted on Docker Hub are no longer updated. Please, use [quay.io image](https://quay.io/repository/jupyter/scipy-notebook)** + +[![docker pulls](https://img.shields.io/docker/pulls/jupyter/scipy-notebook.svg)](https://hub.docker.com/r/jupyter/scipy-notebook/) +[![docker stars](https://img.shields.io/docker/stars/jupyter/scipy-notebook.svg)](https://hub.docker.com/r/jupyter/scipy-notebook/) +[![image size](https://img.shields.io/docker/image-size/jupyter/scipy-notebook/latest)](https://hub.docker.com/r/jupyter/scipy-notebook/ "jupyter/scipy-notebook image size") + +GitHub Actions in the project builds and pushes this image to the Registry. + +Please visit the project documentation site for help to use and contribute to this image and others. + +- [Jupyter Docker Stacks on ReadTheDocs](https://jupyter-docker-stacks.readthedocs.io/en/latest/index.html) +- [Selecting an Image :: Core Stacks :: jupyter/scipy-notebook](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html#jupyter-scipy-notebook) diff --git a/images/tensorflow-notebook/.dockerignore b/images/tensorflow-notebook/.dockerignore new file mode 100644 index 0000000..9dea340 --- /dev/null +++ b/images/tensorflow-notebook/.dockerignore @@ -0,0 +1,2 @@ +# Documentation +README.md diff --git a/images/tensorflow-notebook/Dockerfile b/images/tensorflow-notebook/Dockerfile new file mode 100644 index 0000000..7038f08 --- /dev/null +++ b/images/tensorflow-notebook/Dockerfile @@ -0,0 +1,17 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +ARG REGISTRY=quay.io +ARG OWNER=jupyter +ARG BASE_CONTAINER=$REGISTRY/$OWNER/scipy-notebook +FROM $BASE_CONTAINER + +LABEL maintainer="Jupyter Project " + +# Fix: https://github.com/hadolint/hadolint/wiki/DL4006 +# Fix: https://github.com/koalaman/shellcheck/wiki/SC3014 +SHELL ["/bin/bash", "-o", "pipefail", "-c"] + +# Install Tensorflow with pip +RUN pip install --no-cache-dir tensorflow && \ + fix-permissions "${CONDA_DIR}" && \ + fix-permissions "/home/${NB_USER}" diff --git a/images/tensorflow-notebook/README.md b/images/tensorflow-notebook/README.md new file mode 100644 index 0000000..41e7e2b --- /dev/null +++ b/images/tensorflow-notebook/README.md @@ -0,0 +1,15 @@ +# Jupyter Notebook Deep Learning Stack + +> **Images hosted on Docker Hub are no longer updated. Please, use [quay.io image](https://quay.io/repository/jupyter/tensorflow-notebook)** + +[![docker pulls](https://img.shields.io/docker/pulls/jupyter/tensorflow-notebook.svg)](https://hub.docker.com/r/jupyter/tensorflow-notebook/) +[![docker stars](https://img.shields.io/docker/stars/jupyter/tensorflow-notebook.svg)](https://hub.docker.com/r/jupyter/tensorflow-notebook/) +[![image size](https://img.shields.io/docker/image-size/jupyter/tensorflow-notebook/latest)](https://hub.docker.com/r/jupyter/tensorflow-notebook/ "jupyter/tensorflow-notebook image size") + +GitHub Actions in the project builds and pushes this image to the Registry. + +Please visit the project documentation site for help to use and contribute to this image and others. + +- [Jupyter Docker Stacks on ReadTheDocs](https://jupyter-docker-stacks.readthedocs.io/en/latest/index.html) +- [Selecting an Image :: Core Stacks :: jupyter/tensorflow-notebook](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html#jupyter-tensorflow-notebook) +- [Image Specifics :: Tensorflow](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/specifics.html#tensorflow) diff --git a/mypy.ini b/mypy.ini new file mode 100644 index 0000000..3e20bf5 --- /dev/null +++ b/mypy.ini @@ -0,0 +1,46 @@ +# Mypy is an optional static type checker for Python that aims to combine +# the benefits of dynamic (or "duck") typing and static typing. +# +# Documentation: https://www.mypy-lang.org +# Project: https://github.com/python/mypy +# Config reference: https://mypy.readthedocs.io/en/stable/config_file.html +# +# We use mypy as part of pre-commit checks + +[mypy] +python_version = 3.9 +follow_imports = error +strict = True +no_incremental = True +# This allows us to use pytest decorators, which are not typed yet +disallow_untyped_decorators = False + +# These sections allow us to ignore mypy errors for packages +# which are not (hopefully yet) statically typed + +[mypy-Cython.*] +ignore_missing_imports = True + +[mypy-docker.*] +ignore_missing_imports = True + +[mypy-matplotlib.*] +ignore_missing_imports = True + +[mypy-pandas.*] +ignore_missing_imports = True + +[mypy-plumbum.*] +ignore_missing_imports = True + +[mypy-pyspark.*] +ignore_missing_imports = True + +[mypy-setuptools.*] +ignore_missing_imports = True + +[mypy-tensorflow.*] +ignore_missing_imports = True + +[mypy-torch.*] +ignore_missing_imports = True diff --git a/requirements-dev.txt b/requirements-dev.txt new file mode 100644 index 0000000..3ab2be9 --- /dev/null +++ b/requirements-dev.txt @@ -0,0 +1,10 @@ +docker +plumbum +pre-commit +pytest +pytest-retry +# `pytest-xdist` is a plugin that provides the `--numprocesses` flag, +# allowing us to run `pytest` tests in parallel +pytest-xdist +requests +tabulate diff --git a/tagging/README.md b/tagging/README.md new file mode 100644 index 0000000..5d4ff4a --- /dev/null +++ b/tagging/README.md @@ -0,0 +1,126 @@ +# Docker stacks tagging and manifest creation + +The main purpose of the source code in this folder is to properly tag all the images and to update [build manifests](https://github.com/jupyter/docker-stacks/wiki). +These two processes are closely related, so the source code is widely reused. + +A basic example of a tag is a `Python` version tag. +For example, an image `jupyter/base-notebook` with `python 3.10.5` will have a full image name `quay.io/jupyter/base-notebook:python-3.10.5`. +This tag (and all the other tags) are pushed to Quay.io. + +Manifest is a description of some important part of the image in a `markdown`. +For example, we dump all the `conda` packages, including their versions. + +## Main principles + +- All the images are located in a hierarchical tree. + More info on [image relationships](../docs/using/selecting.md#image-relationships). +- We have `tagger` and `manifest` classes, which can be run inside docker containers to obtain tags and build manifest pieces. +- These classes are inherited from the parent image to all the child images. +- Because manifests and tags might change from parent to child, `taggers` and `manifests` are reevaluated on each image. + So, the values are not inherited. +- To tag an image and create a manifest, run `make hook/base-notebook` (or another image of your choice). + +## Source code description + +In this section, we will briefly describe the source code in this folder and give examples of how to use it. + +### DockerRunner + +`DockerRunner` is a helper class to easily run a docker container and execute commands inside this container: + +```python +from tagging.docker_runner import DockerRunner + +with DockerRunner("ubuntu:22.04") as container: + DockerRunner.run_simple_command(container, cmd="env", print_result=True) +``` + +### GitHelper + +`GitHelper` methods are run in the current `git` repo and give the information about the last commit hash and commit message: + +```python +from tagging.git_helper import GitHelper + +print("Git hash:", GitHelper.commit_hash()) +print("Git message:", GitHelper.commit_message()) +``` + +The prefix of commit hash (namely, 12 letters) is used as an image tag to make it easy to inherit from a fixed version of a docker image. + +### Tagger + +`Tagger` is a class that can be run inside a docker container to calculate some tag for an image. + +All the taggers are inherited from `TaggerInterface`: + +```python +class TaggerInterface: + """Common interface for all taggers""" + + @staticmethod + def tag_value(container) -> str: + raise NotImplementedError +``` + +So, the `tag_value(container)` method gets a docker container as an input and returns a tag. + +`SHATagger` example: + +```python +from tagging.git_helper import GitHelper +from tagging.taggers import TaggerInterface + + +class SHATagger(TaggerInterface): + @staticmethod + def tag_value(container): + return GitHelper.commit_hash_tag() +``` + +- `taggers.py` contains all the taggers. +- `tag_image.py` is a Python executable that is used to tag the image. + +### Manifest + +`ManifestHeader` is a build manifest header. +It contains the following sections: `Build timestamp`, `Docker image size`, and `Git commit` info. + +All the other manifest classes are inherited from `ManifestInterface`: + +```python +class ManifestInterface: + """Common interface for all manifests""" + + @staticmethod + def markdown_piece(container) -> str: + raise NotImplementedError +``` + +- The `markdown_piece(container)` method returns a piece of markdown file to be used as a part of the build manifest. + +`AptPackagesManifest` example: + +```python +from tagging.manifests import ManifestInterface, quoted_output + + +class AptPackagesManifest(ManifestInterface): + @staticmethod + def markdown_piece(container) -> str: + return f"""\ +## Apt Packages + +{quoted_output(container, "apt list --installed")}""" +``` + +- `quoted_output` simply runs the command inside a container using `DockerRunner.run_simple_command` and wraps it to triple quotes to create a valid markdown piece. + It also adds the command which was run to the markdown piece. +- `manifests.py` contains all the manifests. +- `write_manifest.py` is a Python executable that is used to create the build manifest and history line for an image. + +### Images Hierarchy + +All images' dependencies on each other and what taggers and manifest they make use of are defined in `images_hierarchy.py`. + +`get_taggers_and_manifests.py` defines a helper function to get the taggers and manifests for a specific image. diff --git a/tagging/__init__.py b/tagging/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/tagging/apply_tags.py b/tagging/apply_tags.py new file mode 100755 index 0000000..1c33a8f --- /dev/null +++ b/tagging/apply_tags.py @@ -0,0 +1,77 @@ +#!/usr/bin/env python3 +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import argparse +import logging +from pathlib import Path + +import plumbum + +from tagging.get_platform import unify_aarch64 + +docker = plumbum.local["docker"] + +LOGGER = logging.getLogger(__name__) + + +def apply_tags( + short_image_name: str, + registry: str, + owner: str, + tags_dir: Path, + platform: str, +) -> None: + """ + Tags //:latest with the tags reported by all taggers for this image + """ + LOGGER.info(f"Tagging image: {short_image_name}") + + image = f"{registry}/{owner}/{short_image_name}:latest" + filename = f"{platform}-{short_image_name}.txt" + tags = (tags_dir / filename).read_text().splitlines() + + for tag in tags: + LOGGER.info(f"Applying tag: {tag}") + docker["tag", image, tag] & plumbum.FG + + +if __name__ == "__main__": + logging.basicConfig(level=logging.INFO) + + arg_parser = argparse.ArgumentParser() + arg_parser.add_argument( + "--short-image-name", + required=True, + help="Short image name", + ) + arg_parser.add_argument( + "--tags-dir", + required=True, + type=Path, + help="Directory with saved tags file", + ) + arg_parser.add_argument( + "--platform", + required=True, + type=str, + choices=["x86_64", "aarch64", "arm64"], + help="Image platform", + ) + arg_parser.add_argument( + "--registry", + required=True, + type=str, + choices=["docker.io", "quay.io"], + help="Image registry", + ) + arg_parser.add_argument( + "--owner", + required=True, + help="Owner of the image", + ) + args = arg_parser.parse_args() + args.platform = unify_aarch64(args.platform) + + apply_tags( + args.short_image_name, args.registry, args.owner, args.tags_dir, args.platform + ) diff --git a/tagging/docker_runner.py b/tagging/docker_runner.py new file mode 100644 index 0000000..9d71f27 --- /dev/null +++ b/tagging/docker_runner.py @@ -0,0 +1,58 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging +from types import TracebackType +from typing import Optional + +import docker +from docker.models.containers import Container + +LOGGER = logging.getLogger(__name__) + + +class DockerRunner: + def __init__( + self, + image_name: str, + docker_client: docker.DockerClient = docker.from_env(), + command: str = "sleep infinity", + ): + self.container: Optional[Container] = None + self.image_name: str = image_name + self.command: str = command + self.docker_client: docker.DockerClient = docker_client + + def __enter__(self) -> Container: + LOGGER.info(f"Creating container for image {self.image_name} ...") + self.container = self.docker_client.containers.run( + image=self.image_name, + command=self.command, + detach=True, + ) + LOGGER.info(f"Container {self.container.name} created") + return self.container + + def __exit__( + self, + exc_type: Optional[type[BaseException]], + exc_val: Optional[BaseException], + exc_tb: Optional[TracebackType], + ) -> None: + assert self.container is not None + LOGGER.info(f"Removing container {self.container.name} ...") + if self.container: + self.container.remove(force=True) + LOGGER.info(f"Container {self.container.name} removed") + + @staticmethod + def run_simple_command( + container: Container, cmd: str, print_result: bool = True + ) -> str: + LOGGER.info(f"Running cmd: '{cmd}' on container: {container}") + out = container.exec_run(cmd) + result = out.output.decode("utf-8").rstrip() + assert isinstance(result, str) + if print_result: + LOGGER.info(f"Command result: {result}") + assert out.exit_code == 0, f"Command: {cmd} failed" + return result diff --git a/tagging/get_platform.py b/tagging/get_platform.py new file mode 100644 index 0000000..cda791a --- /dev/null +++ b/tagging/get_platform.py @@ -0,0 +1,21 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import platform + +ALL_PLATFORMS = {"x86_64", "aarch64"} + + +def unify_aarch64(platform: str) -> str: + """ + Renames arm64->aarch64 to support local builds on on aarch64 Macs + """ + return { + "aarch64": "aarch64", + "arm64": "aarch64", + "x86_64": "x86_64", + }[platform] + + +def get_platform() -> str: + machine = platform.machine() + return unify_aarch64(machine) diff --git a/tagging/get_taggers_and_manifests.py b/tagging/get_taggers_and_manifests.py new file mode 100644 index 0000000..d41d7a8 --- /dev/null +++ b/tagging/get_taggers_and_manifests.py @@ -0,0 +1,23 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +from typing import Optional + +from tagging.images_hierarchy import ALL_IMAGES +from tagging.manifests import ManifestInterface +from tagging.taggers import TaggerInterface + + +def get_taggers_and_manifests( + short_image_name: Optional[str], +) -> tuple[list[TaggerInterface], list[ManifestInterface]]: + if short_image_name is None: + return [[], []] # type: ignore + + image_description = ALL_IMAGES[short_image_name] + parent_taggers, parent_manifests = get_taggers_and_manifests( + image_description.parent_image + ) + return ( + parent_taggers + image_description.taggers, + parent_manifests + image_description.manifests, + ) diff --git a/tagging/git_helper.py b/tagging/git_helper.py new file mode 100755 index 0000000..d5c0c09 --- /dev/null +++ b/tagging/git_helper.py @@ -0,0 +1,25 @@ +#!/usr/bin/env python3 +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import plumbum + +git = plumbum.local["git"] + + +class GitHelper: + @staticmethod + def commit_hash() -> str: + return git["rev-parse", "HEAD"]().strip() # type: ignore + + @staticmethod + def commit_hash_tag() -> str: + return GitHelper.commit_hash()[:12] + + @staticmethod + def commit_message() -> str: + return git["log", -1, "--pretty=%B"]().strip() # type: ignore + + +if __name__ == "__main__": + print("Git hash:", GitHelper.commit_hash()) + print("Git message:", GitHelper.commit_message()) diff --git a/tagging/images_hierarchy.py b/tagging/images_hierarchy.py new file mode 100644 index 0000000..8c3e3fd --- /dev/null +++ b/tagging/images_hierarchy.py @@ -0,0 +1,93 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +from dataclasses import dataclass, field +from typing import Optional + +from tagging.manifests import ( + AptPackagesManifest, + CondaEnvironmentManifest, + JuliaPackagesManifest, + ManifestInterface, + RPackagesManifest, + SparkInfoManifest, +) +from tagging.taggers import ( + DateTagger, + JavaVersionTagger, + JuliaVersionTagger, + JupyterHubVersionTagger, + JupyterLabVersionTagger, + JupyterNotebookVersionTagger, + PythonMajorMinorVersionTagger, + PythonVersionTagger, + PytorchVersionTagger, + RVersionTagger, + SHATagger, + SparkVersionTagger, + TaggerInterface, + TensorflowVersionTagger, + UbuntuVersionTagger, +) + + +@dataclass +class ImageDescription: + parent_image: Optional[str] + taggers: list[TaggerInterface] = field(default_factory=list) + manifests: list[ManifestInterface] = field(default_factory=list) + + +ALL_IMAGES = { + "docker-stacks-foundation": ImageDescription( + parent_image=None, + taggers=[ + SHATagger(), + DateTagger(), + UbuntuVersionTagger(), + PythonMajorMinorVersionTagger(), + PythonVersionTagger(), + ], + manifests=[CondaEnvironmentManifest(), AptPackagesManifest()], + ), + "base-notebook": ImageDescription( + parent_image="docker-stacks-foundation", + taggers=[ + JupyterNotebookVersionTagger(), + JupyterLabVersionTagger(), + JupyterHubVersionTagger(), + ], + ), + "minimal-notebook": ImageDescription(parent_image="base-notebook"), + "scipy-notebook": ImageDescription(parent_image="minimal-notebook"), + "r-notebook": ImageDescription( + parent_image="minimal-notebook", + taggers=[RVersionTagger()], + manifests=[RPackagesManifest()], + ), + "julia-notebook": ImageDescription( + parent_image="minimal-notebook", + taggers=[JuliaVersionTagger()], + manifests=[JuliaPackagesManifest()], + ), + "tensorflow-notebook": ImageDescription( + parent_image="scipy-notebook", taggers=[TensorflowVersionTagger()] + ), + "pytorch-notebook": ImageDescription( + parent_image="scipy-notebook", taggers=[PytorchVersionTagger()] + ), + "datascience-notebook": ImageDescription( + parent_image="scipy-notebook", + taggers=[RVersionTagger(), JuliaVersionTagger()], + manifests=[RPackagesManifest(), JuliaPackagesManifest()], + ), + "pyspark-notebook": ImageDescription( + parent_image="scipy-notebook", + taggers=[SparkVersionTagger(), JavaVersionTagger()], + manifests=[SparkInfoManifest()], + ), + "all-spark-notebook": ImageDescription( + parent_image="pyspark-notebook", + taggers=[RVersionTagger()], + manifests=[RPackagesManifest()], + ), +} diff --git a/tagging/manifests.py b/tagging/manifests.py new file mode 100644 index 0000000..f043de0 --- /dev/null +++ b/tagging/manifests.py @@ -0,0 +1,121 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import plumbum +from docker.models.containers import Container + +from tagging.docker_runner import DockerRunner +from tagging.git_helper import GitHelper + +docker = plumbum.local["docker"] + + +def quoted_output(container: Container, cmd: str) -> str: + cmd_output = DockerRunner.run_simple_command(container, cmd, print_result=False) + # For example, `mamba info --quiet` adds redundant empty lines + cmd_output = cmd_output.strip("\n") + # For example, R packages list contains trailing backspaces + cmd_output = "\n".join(line.rstrip() for line in cmd_output.split("\n")) + return f"""\ +`{cmd}`: + +```text +{cmd_output} +```""" + + +class ManifestHeader: + """ManifestHeader doesn't fall under common interface, and we run it separately""" + + @staticmethod + def create_header( + short_image_name: str, registry: str, owner: str, build_timestamp: str + ) -> str: + commit_hash = GitHelper.commit_hash() + commit_hash_tag = GitHelper.commit_hash_tag() + commit_message = GitHelper.commit_message() + + # Unfortunately, `docker images` doesn't work when specifying `docker.io` as registry + fixed_registry = registry + "/" if registry != "docker.io" else "" + + image_size = docker[ + "images", + f"{fixed_registry}{owner}/{short_image_name}:latest", + "--format", + "{{.Size}}", + ]().rstrip() + + return f"""\ +# Build manifest for image: {short_image_name}:{commit_hash_tag} + +## Build Info + +- Build timestamp: {build_timestamp} +- Docker image: `{registry}/{owner}/{short_image_name}:{commit_hash_tag}` +- Docker image size: {image_size} +- Git commit SHA: [{commit_hash}](https://github.com/jupyter/docker-stacks/commit/{commit_hash}) +- Git commit message: + +```text +{commit_message} +```""" + + +class ManifestInterface: + """Common interface for all manifests""" + + @staticmethod + def markdown_piece(container: Container) -> str: + raise NotImplementedError + + +class CondaEnvironmentManifest(ManifestInterface): + @staticmethod + def markdown_piece(container: Container) -> str: + return f"""\ +## Python Packages + +{DockerRunner.run_simple_command(container, "python --version")} + +{quoted_output(container, "mamba info --quiet")} + +{quoted_output(container, "mamba list")}""" + + +class AptPackagesManifest(ManifestInterface): + @staticmethod + def markdown_piece(container: Container) -> str: + return f"""\ +## Apt Packages + +{quoted_output(container, "apt list --installed")}""" + + +class RPackagesManifest(ManifestInterface): + @staticmethod + def markdown_piece(container: Container) -> str: + return f"""\ +## R Packages + +{quoted_output(container, "R --version")} + +{quoted_output(container, "R --silent -e 'installed.packages(.Library)[, c(1,3)]'")}""" + + +class JuliaPackagesManifest(ManifestInterface): + @staticmethod + def markdown_piece(container: Container) -> str: + return f"""\ +## Julia Packages + +{quoted_output(container, "julia -E 'using InteractiveUtils; versioninfo()'")} + +{quoted_output(container, "julia -E 'import Pkg; Pkg.status()'")}""" + + +class SparkInfoManifest(ManifestInterface): + @staticmethod + def markdown_piece(container: Container) -> str: + return f"""\ +## Apache Spark + +{quoted_output(container, "/usr/local/spark/bin/spark-submit --version")}""" diff --git a/tagging/merge_tags.py b/tagging/merge_tags.py new file mode 100755 index 0000000..885a482 --- /dev/null +++ b/tagging/merge_tags.py @@ -0,0 +1,72 @@ +#!/usr/bin/env python3 +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import argparse +import logging +from pathlib import Path + +import plumbum + +from tagging.get_platform import ALL_PLATFORMS + +docker = plumbum.local["docker"] + +LOGGER = logging.getLogger(__name__) + + +def merge_tags( + short_image_name: str, + tags_dir: Path, +) -> None: + """ + Merge tags for x86_64 and aarch64 images when possible. + """ + LOGGER.info(f"Merging tags for image: {short_image_name}") + + all_tags: set[str] = set() + + for platform in ALL_PLATFORMS: + filename = f"{platform}-{short_image_name}.txt" + tags = (tags_dir / filename).read_text().splitlines() + all_tags.update(tag.replace(platform + "-", "") for tag in tags) + + LOGGER.info(f"Got tags: {all_tags}") + + for tag in all_tags: + LOGGER.info(f"Trying to merge tag: {tag}") + existing_images = [] + for platform in ALL_PLATFORMS: + image_with_platform = tag.replace(":", f":{platform}-") + LOGGER.info(f"Trying to pull: {image_with_platform}") + try: + docker["pull", image_with_platform] & plumbum.FG + existing_images.append(image_with_platform) + LOGGER.info("Pull success") + except plumbum.ProcessExecutionError: + LOGGER.info( + "Pull failed, image with this tag and platform doesn't exist" + ) + + LOGGER.info(f"Found images: {existing_images}") + docker["manifest", "create", tag][existing_images] & plumbum.FG + docker["manifest", "push", tag] & plumbum.FG + + +if __name__ == "__main__": + logging.basicConfig(level=logging.INFO) + + arg_parser = argparse.ArgumentParser() + arg_parser.add_argument( + "--short-image-name", + required=True, + help="Short image name", + ) + arg_parser.add_argument( + "--tags-dir", + required=True, + type=Path, + help="Directory with saved tags file", + ) + args = arg_parser.parse_args() + + merge_tags(args.short_image_name, args.tags_dir) diff --git a/tagging/taggers.py b/tagging/taggers.py new file mode 100644 index 0000000..1aa6705 --- /dev/null +++ b/tagging/taggers.py @@ -0,0 +1,130 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +from datetime import datetime + +from docker.models.containers import Container + +from tagging.docker_runner import DockerRunner +from tagging.git_helper import GitHelper + + +def _get_program_version(container: Container, program: str) -> str: + return DockerRunner.run_simple_command(container, cmd=f"{program} --version") + + +def _get_pip_package_version(container: Container, package: str) -> str: + PIP_VERSION_PREFIX = "Version: " + + package_info = DockerRunner.run_simple_command( + container, + cmd=f"pip show {package}", + print_result=False, + ) + version_line = package_info.split("\n")[1] + assert version_line.startswith(PIP_VERSION_PREFIX) + return version_line[len(PIP_VERSION_PREFIX) :] + + +class TaggerInterface: + """Common interface for all taggers""" + + @staticmethod + def tag_value(container: Container) -> str: + raise NotImplementedError + + +class SHATagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + return GitHelper.commit_hash_tag() + + +class DateTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + return datetime.utcnow().strftime("%Y-%m-%d") + + +class UbuntuVersionTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + os_release = DockerRunner.run_simple_command( + container, + "cat /etc/os-release", + ).split("\n") + for line in os_release: + if line.startswith("VERSION_ID"): + return "ubuntu-" + line.split("=")[1].strip('"') + raise RuntimeError(f"did not find ubuntu version in: {os_release}") + + +class PythonVersionTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + return "python-" + _get_program_version(container, "python").split()[1] + + +class PythonMajorMinorVersionTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + full_version = PythonVersionTagger.tag_value(container) + return full_version[: full_version.rfind(".")] + + +class JupyterNotebookVersionTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + return "notebook-" + _get_program_version(container, "jupyter-notebook") + + +class JupyterLabVersionTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + return "lab-" + _get_program_version(container, "jupyter-lab") + + +class JupyterHubVersionTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + return "hub-" + _get_program_version(container, "jupyterhub") + + +class RVersionTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + return "r-" + _get_program_version(container, "R").split()[2] + + +class TensorflowVersionTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + return "tensorflow-" + _get_pip_package_version(container, "tensorflow") + + +class PytorchVersionTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + return "pytorch-" + _get_pip_package_version(container, "torch").split("+")[0] + + +class JuliaVersionTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + return "julia-" + _get_program_version(container, "julia").split()[2] + + +class SparkVersionTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + SPARK_VERSION_LINE_PREFIX = r" /___/ .__/\_,_/_/ /_/\_\ version" + + spark_version = _get_program_version(container, "spark-submit") + version_line = spark_version.split("\n")[4] + assert version_line.startswith(SPARK_VERSION_LINE_PREFIX) + return "spark-" + version_line.split(" ")[-1] + + +class JavaVersionTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + return "java-" + _get_program_version(container, "java").split()[1] diff --git a/tagging/update_wiki.py b/tagging/update_wiki.py new file mode 100755 index 0000000..292ee2d --- /dev/null +++ b/tagging/update_wiki.py @@ -0,0 +1,130 @@ +#!/usr/bin/env python3 +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import argparse +import logging +import shutil +from pathlib import Path + +LOGGER = logging.getLogger(__name__) + + +def update_home_wiki_page(wiki_dir: Path, month: str) -> None: + TABLE_BEGINNING = """\ +| Month | +| ---------------------- | +""" + wiki_home_file = wiki_dir / "Home.md" + wiki_home_content = wiki_home_file.read_text() + month_line = f"| [`{month}`](./{month}) |\n" + if month_line not in wiki_home_content: + assert TABLE_BEGINNING in wiki_home_content + wiki_home_content = wiki_home_content.replace( + TABLE_BEGINNING, TABLE_BEGINNING + month_line + ) + wiki_home_file.write_text(wiki_home_content) + LOGGER.info(f"Updated wiki home page with month: {month}") + + +def update_monthly_wiki_page( + wiki_dir: Path, month: str, build_history_line: str +) -> None: + MONTHLY_PAGE_HEADER = f"""\ +# Images built during {month} + +| Date | Image | Links | +| - | - | - | +""" + monthly_page = wiki_dir / "monthly-files" / (month + ".md") + if not monthly_page.exists(): + monthly_page.write_text(MONTHLY_PAGE_HEADER) + LOGGER.info(f"Created monthly page: {monthly_page.relative_to(wiki_dir)}") + + monthly_page_content = monthly_page.read_text() + assert MONTHLY_PAGE_HEADER in monthly_page_content + monthly_page_content = monthly_page_content.replace( + MONTHLY_PAGE_HEADER, MONTHLY_PAGE_HEADER + build_history_line + "\n" + ) + monthly_page.write_text(monthly_page_content) + LOGGER.info(f"Updated monthly page: {monthly_page.relative_to(wiki_dir)}") + + +def get_manifest_timestamp(manifest_file: Path) -> str: + file_content = manifest_file.read_text() + TIMESTAMP_PREFIX = "Build timestamp: " + TIMESTAMP_LENGTH = 20 + timestamp = file_content[ + file_content.find(TIMESTAMP_PREFIX) + len(TIMESTAMP_PREFIX) : + ][:TIMESTAMP_LENGTH] + # Should be good enough till year 2100 + assert timestamp.startswith("20"), timestamp + assert timestamp.endswith("Z"), timestamp + return timestamp + + +def get_manifest_month(manifest_file: Path) -> str: + return get_manifest_timestamp(manifest_file)[:7] + + +def remove_old_manifests(wiki_dir: Path) -> None: + MAX_NUMBER_OF_MANIFESTS = 4500 + + manifest_files: list[tuple[str, Path]] = [] + for file in (wiki_dir / "manifests").rglob("*.md"): + manifest_files.append((get_manifest_timestamp(file), file)) + + manifest_files.sort(reverse=True) + for _, file in manifest_files[MAX_NUMBER_OF_MANIFESTS:]: + file.unlink() + LOGGER.info(f"Removed manifest: {file.relative_to(wiki_dir)}") + + +def update_wiki(wiki_dir: Path, hist_lines_dir: Path, manifests_dir: Path) -> None: + LOGGER.info("Updating wiki") + + manifest_files = list(manifests_dir.rglob("*.md")) + assert manifest_files, "expected to have some manifest files" + for manifest_file in manifest_files: + month = get_manifest_month(manifest_file) + copy_to = wiki_dir / "manifests" / month / manifest_file.name + copy_to.parent.mkdir(exist_ok=True) + shutil.copy(manifest_file, copy_to) + LOGGER.info(f"Added manifest file: {copy_to.relative_to(wiki_dir)}") + + build_history_line_files = sorted(hist_lines_dir.rglob("*.txt")) + assert build_history_line_files, "expected to have some build history line files" + for build_history_line_file in build_history_line_files: + build_history_line = build_history_line_file.read_text() + assert build_history_line.startswith("| `") + month = build_history_line[3:10] + update_home_wiki_page(wiki_dir, month) + update_monthly_wiki_page(wiki_dir, month, build_history_line) + + remove_old_manifests(wiki_dir) + + +if __name__ == "__main__": + logging.basicConfig(level=logging.INFO) + + arg_parser = argparse.ArgumentParser() + arg_parser.add_argument( + "--wiki-dir", + required=True, + type=Path, + help="Directory of the wiki repo", + ) + arg_parser.add_argument( + "--hist-lines-dir", + required=True, + type=Path, + help="Directory with history lines", + ) + arg_parser.add_argument( + "--manifests-dir", + required=True, + type=Path, + help="Directory with manifest files", + ) + args = arg_parser.parse_args() + + update_wiki(args.wiki_dir, args.hist_lines_dir, args.manifests_dir) diff --git a/tagging/write_manifest.py b/tagging/write_manifest.py new file mode 100755 index 0000000..c4605fd --- /dev/null +++ b/tagging/write_manifest.py @@ -0,0 +1,150 @@ +#!/usr/bin/env python3 +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import argparse +import datetime +import logging +from pathlib import Path + +from docker.models.containers import Container + +from tagging.docker_runner import DockerRunner +from tagging.get_platform import get_platform +from tagging.get_taggers_and_manifests import get_taggers_and_manifests +from tagging.git_helper import GitHelper +from tagging.manifests import ManifestHeader, ManifestInterface + +LOGGER = logging.getLogger(__name__) + +# We use a manifest creation timestamp, which happens right after a build +BUILD_TIMESTAMP = datetime.datetime.utcnow().isoformat()[:-7] + "Z" +MARKDOWN_LINE_BREAK = "
    " + + +def write_build_history_line( + short_image_name: str, + registry: str, + owner: str, + hist_lines_dir: Path, + filename: str, + all_tags: list[str], +) -> None: + LOGGER.info("Appending build history line") + + date_column = f"`{BUILD_TIMESTAMP}`" + image_column = MARKDOWN_LINE_BREAK.join( + f"`{registry}/{owner}/{short_image_name}:{tag_value}`" for tag_value in all_tags + ) + commit_hash = GitHelper.commit_hash() + links_column = MARKDOWN_LINE_BREAK.join( + [ + f"[Git diff](https://github.com/jupyter/docker-stacks/commit/{commit_hash})", + f"[Dockerfile](https://github.com/jupyter/docker-stacks/blob/{commit_hash}/images/{short_image_name}/Dockerfile)", + f"[Build manifest](./{filename})", + ] + ) + build_history_line = f"| {date_column} | {image_column} | {links_column} |" + hist_lines_dir.mkdir(parents=True, exist_ok=True) + (hist_lines_dir / f"{filename}.txt").write_text(build_history_line) + + +def write_manifest_file( + short_image_name: str, + registry: str, + owner: str, + manifests_dir: Path, + filename: str, + manifests: list[ManifestInterface], + container: Container, +) -> None: + manifest_names = [manifest.__class__.__name__ for manifest in manifests] + LOGGER.info(f"Using manifests: {manifest_names}") + + markdown_pieces = [ + ManifestHeader.create_header(short_image_name, registry, owner, BUILD_TIMESTAMP) + ] + [manifest.markdown_piece(container) for manifest in manifests] + markdown_content = "\n\n".join(markdown_pieces) + "\n" + + manifests_dir.mkdir(parents=True, exist_ok=True) + (manifests_dir / f"{filename}.md").write_text(markdown_content) + + +def write_manifest( + short_image_name: str, + registry: str, + owner: str, + hist_lines_dir: Path, + manifests_dir: Path, +) -> None: + LOGGER.info(f"Creating manifests for image: {short_image_name}") + taggers, manifests = get_taggers_and_manifests(short_image_name) + + image = f"{registry}/{owner}/{short_image_name}:latest" + + file_prefix = get_platform() + commit_hash_tag = GitHelper.commit_hash_tag() + filename = f"{file_prefix}-{short_image_name}-{commit_hash_tag}" + + with DockerRunner(image) as container: + tags_prefix = get_platform() + all_tags = [ + tags_prefix + "-" + tagger.tag_value(container) for tagger in taggers + ] + write_build_history_line( + short_image_name, registry, owner, hist_lines_dir, filename, all_tags + ) + write_manifest_file( + short_image_name, + registry, + owner, + manifests_dir, + filename, + manifests, + container, + ) + + +if __name__ == "__main__": + logging.basicConfig(level=logging.INFO) + + arg_parser = argparse.ArgumentParser() + arg_parser.add_argument( + "--short-image-name", + required=True, + help="Short image name", + ) + arg_parser.add_argument( + "--hist-lines-dir", + required=True, + type=Path, + help="Directory to save history line", + ) + arg_parser.add_argument( + "--manifests-dir", + required=True, + type=Path, + help="Directory to save manifest file", + ) + arg_parser.add_argument( + "--registry", + required=True, + type=str, + choices=["docker.io", "quay.io"], + help="Image registry", + ) + arg_parser.add_argument( + "--owner", + required=True, + help="Owner of the image", + ) + args = arg_parser.parse_args() + + LOGGER.info(f"Current build timestamp: {BUILD_TIMESTAMP}") + + write_manifest( + args.short_image_name, + args.registry, + args.owner, + args.hist_lines_dir, + args.manifests_dir, + ) diff --git a/tagging/write_tags_file.py b/tagging/write_tags_file.py new file mode 100755 index 0000000..880fec4 --- /dev/null +++ b/tagging/write_tags_file.py @@ -0,0 +1,75 @@ +#!/usr/bin/env python3 +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import argparse +import logging +from pathlib import Path + +from tagging.docker_runner import DockerRunner +from tagging.get_platform import get_platform +from tagging.get_taggers_and_manifests import get_taggers_and_manifests + +LOGGER = logging.getLogger(__name__) + + +def write_tags_file( + short_image_name: str, + registry: str, + owner: str, + tags_dir: Path, +) -> None: + """ + Writes tags file for the image //:latest + """ + LOGGER.info(f"Tagging image: {short_image_name}") + taggers, _ = get_taggers_and_manifests(short_image_name) + + image = f"{registry}/{owner}/{short_image_name}:latest" + tags_prefix = get_platform() + filename = f"{tags_prefix}-{short_image_name}.txt" + + tags = [f"{registry}/{owner}/{short_image_name}:{tags_prefix}-latest"] + with DockerRunner(image) as container: + for tagger in taggers: + tagger_name = tagger.__class__.__name__ + tag_value = tagger.tag_value(container) + LOGGER.info( + f"Calculated tag, tagger_name: {tagger_name} tag_value: {tag_value}" + ) + tags.append( + f"{registry}/{owner}/{short_image_name}:{tags_prefix}-{tag_value}" + ) + tags_dir.mkdir(parents=True, exist_ok=True) + (tags_dir / filename).write_text("\n".join(tags)) + + +if __name__ == "__main__": + logging.basicConfig(level=logging.INFO) + + arg_parser = argparse.ArgumentParser() + arg_parser.add_argument( + "--short-image-name", + required=True, + help="Short image name", + ) + arg_parser.add_argument( + "--tags-dir", + required=True, + type=Path, + help="Directory to save tags file", + ) + arg_parser.add_argument( + "--registry", + required=True, + type=str, + choices=["docker.io", "quay.io"], + help="Image registry", + ) + arg_parser.add_argument( + "--owner", + required=True, + help="Owner of the image", + ) + args = arg_parser.parse_args() + + write_tags_file(args.short_image_name, args.registry, args.owner, args.tags_dir) diff --git a/tests/README.md b/tests/README.md new file mode 100644 index 0000000..b477e2d --- /dev/null +++ b/tests/README.md @@ -0,0 +1,3 @@ +# Docker stacks testing + +Please, refer to the [testing section of documentation](https://jupyter-docker-stacks.readthedocs.io/en/latest/contributing/tests.html) to see how the tests are run. diff --git a/tests/R_mimetype_check.py b/tests/R_mimetype_check.py new file mode 100644 index 0000000..ba90fa5 --- /dev/null +++ b/tests/R_mimetype_check.py @@ -0,0 +1,24 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging + +from tests.conftest import TrackedContainer + +LOGGER = logging.getLogger(__name__) + + +def check_r_mimetypes(container: TrackedContainer) -> None: + """Check if Rscript command can be executed""" + LOGGER.info("Test that R command can be executed ...") + R_MIMETYPES_CHECK_CMD = 'if (length(getOption("jupyter.plot_mimetypes")) != 5) {stop("missing jupyter.plot_mimetypes")}' + command = ["Rscript", "-e", R_MIMETYPES_CHECK_CMD] + logs = container.run_and_wait( + timeout=10, + tty=True, + command=command, + ) + LOGGER.debug(f"{logs=}") + # If there is any output after this it means there was an error + assert logs.splitlines()[-1] == "Executing the command: " + " ".join( + command + ), f"Command {R_MIMETYPES_CHECK_CMD=} failed" diff --git a/tests/__init__.py b/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/tests/all-spark-notebook/data/issue_1168.ipynb b/tests/all-spark-notebook/data/issue_1168.ipynb new file mode 100644 index 0000000..4d34371 --- /dev/null +++ b/tests/all-spark-notebook/data/issue_1168.ipynb @@ -0,0 +1,61 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This is a test for the issue [#1168](https://github.com/jupyter/docker-stacks/issues/1168)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from pyspark.sql import SparkSession\n", + "\n", + "# Spark session & context\n", + "spark = SparkSession.builder.master(\"local\").getOrCreate()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "df = spark.createDataFrame([(1, 21), (2, 30)], (\"id\", \"age\"))\n", + "\n", + "\n", + "def filter_func(iterator):\n", + " for pdf in iterator:\n", + " yield pdf[pdf.id == 1]\n", + "\n", + "\n", + "df.mapInPandas(filter_func, df.schema).show()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.10" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/tests/all-spark-notebook/data/local_pyspark.ipynb b/tests/all-spark-notebook/data/local_pyspark.ipynb new file mode 100644 index 0000000..fb379ae --- /dev/null +++ b/tests/all-spark-notebook/data/local_pyspark.ipynb @@ -0,0 +1,43 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from pyspark.sql import SparkSession\n", + "\n", + "# Spark session & context\n", + "spark = SparkSession.builder.master(\"local\").getOrCreate()\n", + "sc = spark.sparkContext\n", + "\n", + "# Sum of the first 100 whole numbers\n", + "rdd = sc.parallelize(range(100 + 1))\n", + "rdd.sum()\n", + "# 5050" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.10" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/tests/all-spark-notebook/data/local_sparkR.ipynb b/tests/all-spark-notebook/data/local_sparkR.ipynb new file mode 100644 index 0000000..aaa11ba --- /dev/null +++ b/tests/all-spark-notebook/data/local_sparkR.ipynb @@ -0,0 +1,41 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "library(SparkR)\n", + "\n", + "# Spark session & context\n", + "sc <- sparkR.session(\"local\")\n", + "\n", + "# Sum of the first 100 whole numbers\n", + "sdf <- createDataFrame(list(1:100))\n", + "dapplyCollect(sdf,\n", + " function(x) \n", + " { x <- sum(x)}\n", + " )\n", + "# 5050" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "R", + "language": "R", + "name": "ir" + }, + "language_info": { + "codemirror_mode": "r", + "file_extension": ".r", + "mimetype": "text/x-r-source", + "name": "R", + "pygments_lexer": "r", + "version": "3.6.3" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/tests/all-spark-notebook/data/local_sparklyr.ipynb b/tests/all-spark-notebook/data/local_sparklyr.ipynb new file mode 100644 index 0000000..be6651b --- /dev/null +++ b/tests/all-spark-notebook/data/local_sparklyr.ipynb @@ -0,0 +1,43 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "library(sparklyr)\n", + "\n", + "# get the default config\n", + "conf <- spark_config()\n", + "# Set the catalog implementation in-memory\n", + "conf$spark.sql.catalogImplementation <- \"in-memory\"\n", + "\n", + "# Spark session & context\n", + "sc <- spark_connect(master = \"local\", config = conf)\n", + "\n", + "# Sum of the first 100 whole numbers\n", + "sdf_len(sc, 100, repartition = 1) %>% \n", + " spark_apply(function(e) sum(e))\n", + "# 5050" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "R", + "language": "R", + "name": "ir" + }, + "language_info": { + "codemirror_mode": "r", + "file_extension": ".r", + "mimetype": "text/x-r-source", + "name": "R", + "pygments_lexer": "r", + "version": "3.6.3" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/tests/all-spark-notebook/test_spark_notebooks.py b/tests/all-spark-notebook/test_spark_notebooks.py new file mode 100644 index 0000000..7e54e5b --- /dev/null +++ b/tests/all-spark-notebook/test_spark_notebooks.py @@ -0,0 +1,40 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging +from pathlib import Path + +import pytest # type: ignore + +from tests.conftest import TrackedContainer + +LOGGER = logging.getLogger(__name__) +THIS_DIR = Path(__file__).parent.resolve() + + +@pytest.mark.flaky(retries=3, delay=1) +@pytest.mark.parametrize( + "test_file", + ["issue_1168", "local_pyspark", "local_sparklyr", "local_sparkR"], +) +def test_nbconvert(container: TrackedContainer, test_file: str) -> None: + """Check if Spark notebooks can be executed""" + host_data_dir = THIS_DIR / "data" + cont_data_dir = "/home/jovyan/data" + output_dir = "/tmp" + conversion_timeout_ms = 5000 + LOGGER.info(f"Test that {test_file} notebook can be executed ...") + command = ( + "jupyter nbconvert --to markdown " + + f"--ExecutePreprocessor.timeout={conversion_timeout_ms} " + + f"--output-dir {output_dir} " + + f"--execute {cont_data_dir}/{test_file}.ipynb" + ) + logs = container.run_and_wait( + timeout=60, + volumes={str(host_data_dir): {"bind": cont_data_dir, "mode": "ro"}}, + tty=True, + command=["bash", "-c", command], + ) + + expected_file = f"{output_dir}/{test_file}.md" + assert expected_file in logs, f"Expected file {expected_file} not generated" diff --git a/tests/base-notebook/test_container_options.py b/tests/base-notebook/test_container_options.py new file mode 100644 index 0000000..b330c1e --- /dev/null +++ b/tests/base-notebook/test_container_options.py @@ -0,0 +1,115 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging +import time + +import pytest # type: ignore +import requests + +from tests.conftest import TrackedContainer, find_free_port + +LOGGER = logging.getLogger(__name__) + + +def test_cli_args(container: TrackedContainer, http_client: requests.Session) -> None: + """Image should respect command line args (e.g., disabling token security)""" + host_port = find_free_port() + running_container = container.run_detached( + command=["start-notebook.py", "--IdentityProvider.token=''"], + ports={"8888/tcp": host_port}, + ) + resp = http_client.get(f"http://localhost:{host_port}") + resp.raise_for_status() + logs = running_container.logs().decode("utf-8") + LOGGER.debug(logs) + assert "ERROR" not in logs + warnings = TrackedContainer.get_warnings(logs) + assert not warnings + assert "login_submit" not in resp.text + + +def test_nb_user_change(container: TrackedContainer) -> None: + """Container should change the username (`NB_USER`) of the default user.""" + nb_user = "nayvoj" + running_container = container.run_detached( + tty=True, + user="root", + environment=[f"NB_USER={nb_user}", "CHOWN_HOME=yes"], + command=["bash", "-c", "sleep infinity"], + ) + + # Give the chown time to complete. + # Use sleep, not wait, because the container sleeps forever. + time.sleep(1) + LOGGER.info( + f"Checking if a home folder of {nb_user} contains the hidden '.jupyter' folder with appropriate permissions ..." + ) + command = f'stat -c "%F %U %G" /home/{nb_user}/.jupyter' + expected_output = f"directory {nb_user} users" + cmd = running_container.exec_run(command, workdir=f"/home/{nb_user}") + output = cmd.output.decode("utf-8").strip("\n") + assert ( + output == expected_output + ), f"Hidden folder .jupyter was not copied properly to {nb_user} home folder. stat: {output}, expected {expected_output}" + + +@pytest.mark.filterwarnings("ignore:Unverified HTTPS request") +def test_unsigned_ssl( + container: TrackedContainer, http_client: requests.Session +) -> None: + """Container should generate a self-signed SSL certificate + and Jupyter Server should use it to enable HTTPS. + """ + host_port = find_free_port() + running_container = container.run_detached( + environment=["GEN_CERT=yes"], + ports={"8888/tcp": host_port}, + ) + # NOTE: The requests.Session backing the http_client fixture + # does not retry properly while the server is booting up. + # An SSL handshake error seems to abort the retry logic. + # Forcing a long sleep for the moment until I have time to dig more. + time.sleep(1) + resp = http_client.get(f"https://localhost:{host_port}", verify=False) + resp.raise_for_status() + assert "login_submit" in resp.text + logs = running_container.logs().decode("utf-8") + assert "ERROR" not in logs + warnings = TrackedContainer.get_warnings(logs) + assert not warnings + + +@pytest.mark.parametrize( + "env", + [ + {}, + {"JUPYTER_PORT": 1234, "DOCKER_STACKS_JUPYTER_CMD": "lab"}, + {"JUPYTER_PORT": 2345, "DOCKER_STACKS_JUPYTER_CMD": "notebook"}, + {"JUPYTER_PORT": 3456, "DOCKER_STACKS_JUPYTER_CMD": "server"}, + {"JUPYTER_PORT": 4567, "DOCKER_STACKS_JUPYTER_CMD": "nbclassic"}, + {"JUPYTER_PORT": 5678, "RESTARTABLE": "yes"}, + {"JUPYTER_PORT": 6789}, + {"JUPYTER_PORT": 7890, "DOCKER_STACKS_JUPYTER_CMD": "notebook"}, + ], +) +def test_custom_internal_port( + container: TrackedContainer, + http_client: requests.Session, + env: dict[str, str], +) -> None: + """Container should be accessible from the host + when using custom internal port""" + host_port = find_free_port() + internal_port = env.get("JUPYTER_PORT", 8888) + running_container = container.run_detached( + command=["start-notebook.py", "--IdentityProvider.token=''"], + environment=env, + ports={internal_port: host_port}, + ) + resp = http_client.get(f"http://localhost:{host_port}") + resp.raise_for_status() + logs = running_container.logs().decode("utf-8") + LOGGER.debug(logs) + assert "ERROR" not in logs + warnings = TrackedContainer.get_warnings(logs) + assert not warnings diff --git a/tests/base-notebook/test_healthcheck.py b/tests/base-notebook/test_healthcheck.py new file mode 100644 index 0000000..d5874c9 --- /dev/null +++ b/tests/base-notebook/test_healthcheck.py @@ -0,0 +1,159 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging +import time +from typing import Optional + +import pytest # type: ignore + +from tests.conftest import TrackedContainer, get_health + +LOGGER = logging.getLogger(__name__) + + +@pytest.mark.parametrize( + "env,cmd,user", + [ + (None, None, None), + (["DOCKER_STACKS_JUPYTER_CMD=lab"], None, None), + (["DOCKER_STACKS_JUPYTER_CMD=notebook"], None, None), + (["DOCKER_STACKS_JUPYTER_CMD=server"], None, None), + (["DOCKER_STACKS_JUPYTER_CMD=nbclassic"], None, None), + (["RESTARTABLE=yes"], None, None), + (["JUPYTER_PORT=8171"], None, None), + (["JUPYTER_PORT=8117", "DOCKER_STACKS_JUPYTER_CMD=notebook"], None, None), + (None, ["start-notebook.sh"], None), + (None, ["start-notebook.py", "--ServerApp.base_url=/test"], None), + (None, ["start-notebook.py", "--ServerApp.base_url=/test/"], None), + (["GEN_CERT=1"], ["start-notebook.py", "--ServerApp.base_url=/test"], None), + ( + ["GEN_CERT=1", "JUPYTER_PORT=7891"], + ["start-notebook.py", "--ServerApp.base_url=/test"], + None, + ), + (["NB_USER=testuser", "CHOWN_HOME=1"], None, "root"), + ( + ["NB_USER=testuser", "CHOWN_HOME=1"], + ["start-notebook.py", "--ServerApp.base_url=/test"], + "root", + ), + ( + ["NB_USER=testuser", "CHOWN_HOME=1", "JUPYTER_PORT=8123"], + ["start-notebook.py", "--ServerApp.base_url=/test"], + "root", + ), + (["JUPYTER_RUNTIME_DIR=/tmp/jupyter-runtime"], ["start-notebook.sh"], None), + ( + [ + "NB_USER=testuser", + "CHOWN_HOME=1", + "JUPYTER_RUNTIME_DIR=/tmp/jupyter-runtime", + ], + ["start-notebook.sh"], + "root", + ), + ], +) +def test_healthy( + container: TrackedContainer, + env: Optional[list[str]], + cmd: Optional[list[str]], + user: Optional[str], +) -> None: + running_container = container.run_detached( + tty=True, + environment=env, + command=cmd, + user=user, + ) + + # giving some time to let the server start + finish_time = time.time() + 10 + sleep_time = 0.1 + while time.time() < finish_time: + time.sleep(sleep_time) + if get_health(running_container) == "healthy": + return + + assert get_health(running_container) == "healthy" + + +@pytest.mark.parametrize( + "env,cmd,user", + [ + ( + ["HTTPS_PROXY=host.docker.internal", "HTTP_PROXY=host.docker.internal"], + None, + None, + ), + ( + [ + "NB_USER=testuser", + "CHOWN_HOME=1", + "JUPYTER_PORT=8123", + "HTTPS_PROXY=host.docker.internal", + "HTTP_PROXY=host.docker.internal", + ], + ["start-notebook.py", "--ServerApp.base_url=/test"], + "root", + ), + ], +) +def test_healthy_with_proxy( + container: TrackedContainer, + env: Optional[list[str]], + cmd: Optional[list[str]], + user: Optional[str], +) -> None: + running_container = container.run_detached( + tty=True, + environment=env, + command=cmd, + user=user, + ) + + # giving some time to let the server start + finish_time = time.time() + 10 + sleep_time = 0.1 + while time.time() < finish_time: + time.sleep(sleep_time) + if get_health(running_container) == "healthy": + return + + assert get_health(running_container) == "healthy" + + +@pytest.mark.parametrize( + "env,cmd", + [ + (["NB_USER=testuser", "CHOWN_HOME=1"], None), + ( + ["NB_USER=testuser", "CHOWN_HOME=1"], + ["start-notebook.py", "--ServerApp.base_url=/test"], + ), + ( + ["NB_USER=testuser", "CHOWN_HOME=1", "JUPYTER_PORT=8123"], + ["start-notebook.py", "--ServerApp.base_url=/test"], + ), + ], +) +def test_not_healthy( + container: TrackedContainer, + env: Optional[list[str]], + cmd: Optional[list[str]], +) -> None: + running_container = container.run_detached( + tty=True, + environment=env, + command=cmd, + ) + + # giving some time to let the server start + finish_time = time.time() + 5 + sleep_time = 0.1 + while time.time() < finish_time: + time.sleep(sleep_time) + if get_health(running_container) == "healthy": + raise RuntimeError("Container should not be healthy for this testcase") + + assert get_health(running_container) != "healthy" diff --git a/tests/base-notebook/test_notebook.py b/tests/base-notebook/test_notebook.py new file mode 100644 index 0000000..3985990 --- /dev/null +++ b/tests/base-notebook/test_notebook.py @@ -0,0 +1,16 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import requests + +from tests.conftest import TrackedContainer, find_free_port + + +def test_secured_server( + container: TrackedContainer, http_client: requests.Session +) -> None: + """Jupyter Server should eventually request user login.""" + host_port = find_free_port() + container.run_detached(ports={"8888/tcp": host_port}) + resp = http_client.get(f"http://localhost:{host_port}") + resp.raise_for_status() + assert "login_submit" in resp.text, "User login not requested" diff --git a/tests/base-notebook/test_npm_package_manager.py b/tests/base-notebook/test_npm_package_manager.py new file mode 100644 index 0000000..14f5095 --- /dev/null +++ b/tests/base-notebook/test_npm_package_manager.py @@ -0,0 +1,9 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +from tests.conftest import TrackedContainer +from tests.run_command import run_command + + +def test_npm_package_manager(container: TrackedContainer) -> None: + """Test that npm is installed and runs.""" + run_command(container, "npm --version") diff --git a/tests/base-notebook/test_pandoc.py b/tests/base-notebook/test_pandoc.py new file mode 100644 index 0000000..3c828a3 --- /dev/null +++ b/tests/base-notebook/test_pandoc.py @@ -0,0 +1,17 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging + +from tests.conftest import TrackedContainer + +LOGGER = logging.getLogger(__name__) + + +def test_pandoc(container: TrackedContainer) -> None: + """Pandoc shall be able to convert MD to HTML.""" + logs = container.run_and_wait( + timeout=10, + tty=True, + command=["bash", "-c", 'echo "**BOLD**" | pandoc'], + ) + assert "

    BOLD

    " in logs diff --git a/tests/base-notebook/test_start_container.py b/tests/base-notebook/test_start_container.py new file mode 100644 index 0000000..729e7ca --- /dev/null +++ b/tests/base-notebook/test_start_container.py @@ -0,0 +1,85 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging +import time +from typing import Optional + +import pytest # type: ignore +import requests + +from tests.conftest import TrackedContainer, find_free_port + +LOGGER = logging.getLogger(__name__) + + +@pytest.mark.parametrize( + "env,expected_command,expected_start,expected_warnings", + [ + (None, "jupyter lab", True, []), + (["DOCKER_STACKS_JUPYTER_CMD=lab"], "jupyter lab", True, []), + (["RESTARTABLE=yes"], "run-one-constantly jupyter lab", True, []), + (["DOCKER_STACKS_JUPYTER_CMD=notebook"], "jupyter notebook", True, []), + (["DOCKER_STACKS_JUPYTER_CMD=server"], "jupyter server", True, []), + (["DOCKER_STACKS_JUPYTER_CMD=nbclassic"], "jupyter nbclassic", True, []), + ( + ["JUPYTERHUB_API_TOKEN=my_token"], + "jupyterhub-singleuser", + False, + ["WARNING: using start-singleuser.py"], + ), + ], +) +def test_start_notebook( + container: TrackedContainer, + http_client: requests.Session, + env: Optional[list[str]], + expected_command: str, + expected_start: bool, + expected_warnings: list[str], +) -> None: + """Test the notebook start-notebook.py script""" + LOGGER.info( + f"Test that the start-notebook.py launches the {expected_command} server from the env {env} ..." + ) + host_port = find_free_port() + running_container = container.run_detached( + tty=True, + environment=env, + ports={"8888/tcp": host_port}, + ) + # sleeping some time to let the server start + time.sleep(2) + logs = running_container.logs().decode("utf-8") + LOGGER.debug(logs) + # checking that the expected command is launched + assert ( + f"Executing: {expected_command}" in logs + ), f"Not the expected command ({expected_command}) was launched" + # checking errors and warnings in logs + assert "ERROR" not in logs, "ERROR(s) found in logs" + for exp_warning in expected_warnings: + assert exp_warning in logs, f"Expected warning {exp_warning} not found in logs" + warnings = TrackedContainer.get_warnings(logs) + assert len(expected_warnings) == len(warnings) + # checking if the server is listening + if expected_start: + resp = http_client.get(f"http://localhost:{host_port}") + assert resp.status_code == 200, "Server is not listening" + + +def test_tini_entrypoint( + container: TrackedContainer, pid: int = 1, command: str = "tini" +) -> None: + """Check that tini is launched as PID 1 + + Credits to the following answer for the ps options used in the test: + https://superuser.com/questions/632979/if-i-know-the-pid-number-of-a-process-how-can-i-get-its-name + """ + LOGGER.info(f"Test that {command} is launched as PID {pid} ...") + running_container = container.run_detached(tty=True) + # Select the PID 1 and get the corresponding command + cmd = running_container.exec_run(f"ps -p {pid} -o comm=") + output = cmd.output.decode("utf-8").strip("\n") + assert "ERROR" not in output + assert "WARNING" not in output + assert output == command, f"{command} shall be launched as pid {pid}, got {output}" diff --git a/tests/conftest.py b/tests/conftest.py new file mode 100644 index 0000000..a151eb6 --- /dev/null +++ b/tests/conftest.py @@ -0,0 +1,157 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging +import os +import socket +from contextlib import closing +from typing import Any, Optional + +import docker +import pytest # type: ignore +import requests +from docker.models.containers import Container +from requests.adapters import HTTPAdapter +from urllib3.util.retry import Retry + +LOGGER = logging.getLogger(__name__) + + +def find_free_port() -> str: + """Returns the available host port. Can be called in multiple threads/processes.""" + with closing(socket.socket(socket.AF_INET, socket.SOCK_STREAM)) as s: + s.bind(("", 0)) + s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) + return s.getsockname()[1] # type: ignore + + +def get_health(container: Container) -> str: + api_client = docker.APIClient() + inspect_results = api_client.inspect_container(container.name) + return inspect_results["State"]["Health"]["Status"] # type: ignore + + +@pytest.fixture(scope="session") +def http_client() -> requests.Session: + """Requests session with retries and backoff.""" + s = requests.Session() + retries = Retry(total=5, backoff_factor=1) + s.mount("http://", HTTPAdapter(max_retries=retries)) + s.mount("https://", HTTPAdapter(max_retries=retries)) + return s + + +@pytest.fixture(scope="session") +def docker_client() -> docker.DockerClient: + """Docker client configured based on the host environment""" + return docker.from_env() + + +@pytest.fixture(scope="session") +def image_name() -> str: + """Image name to test""" + return os.environ["TEST_IMAGE"] + + +class TrackedContainer: + """Wrapper that collects docker container configuration and delays + container creation/execution. + + Parameters + ---------- + docker_client: docker.DockerClient + Docker client instance + image_name: str + Name of the docker image to launch + **kwargs: dict, optional + Default keyword arguments to pass to docker.DockerClient.containers.run + """ + + def __init__( + self, + docker_client: docker.DockerClient, + image_name: str, + **kwargs: Any, + ): + self.container: Optional[Container] = None + self.docker_client: docker.DockerClient = docker_client + self.image_name: str = image_name + self.kwargs: Any = kwargs + + def run_detached(self, **kwargs: Any) -> Container: + """Runs a docker container using the pre-configured image name + and a mix of the pre-configured container options and those passed + to this method. + + Keeps track of the docker.Container instance spawned to kill it + later. + + Parameters + ---------- + **kwargs: dict, optional + Keyword arguments to pass to docker.DockerClient.containers.run + extending and/or overriding key/value pairs passed to the constructor + + Returns + ------- + docker.Container + """ + all_kwargs = self.kwargs | kwargs + LOGGER.info(f"Running {self.image_name} with args {all_kwargs} ...") + self.container = self.docker_client.containers.run( + self.image_name, + **all_kwargs, + ) + return self.container + + def run_and_wait( + self, + timeout: int, + no_warnings: bool = True, + no_errors: bool = True, + no_failure: bool = True, + **kwargs: Any, + ) -> str: + running_container = self.run_detached(**kwargs) + rv = running_container.wait(timeout=timeout) + logs = running_container.logs().decode("utf-8") + assert isinstance(logs, str) + LOGGER.debug(logs) + if no_warnings: + assert not self.get_warnings(logs) + if no_errors: + assert not self.get_errors(logs) + assert no_failure == (rv["StatusCode"] == 0) + return logs + + @staticmethod + def get_errors(logs: str) -> list[str]: + return TrackedContainer._lines_starting_with(logs, "ERROR") + + @staticmethod + def get_warnings(logs: str) -> list[str]: + return TrackedContainer._lines_starting_with(logs, "WARNING") + + @staticmethod + def _lines_starting_with(logs: str, pattern: str) -> list[str]: + return [line for line in logs.splitlines() if line.startswith(pattern)] + + def remove(self) -> None: + """Kills and removes the tracked docker container.""" + if self.container: + self.container.remove(force=True) + + +@pytest.fixture(scope="function") +def container(docker_client: docker.DockerClient, image_name: str) -> Container: + """Notebook container with initial configuration appropriate for testing + (e.g., HTTP port exposed to the host for HTTP calls). + + Yields the container instance and kills it when the caller is done with it. + """ + container = TrackedContainer( + docker_client, + image_name, + detach=True, + ) + yield container + container.remove() diff --git a/tests/datascience-notebook/test_julia_datascience.py b/tests/datascience-notebook/test_julia_datascience.py new file mode 100644 index 0000000..3b1a55b --- /dev/null +++ b/tests/datascience-notebook/test_julia_datascience.py @@ -0,0 +1,8 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +from tests.conftest import TrackedContainer +from tests.run_command import run_command + + +def test_julia(container: TrackedContainer) -> None: + run_command(container, "julia --version") diff --git a/tests/datascience-notebook/test_mimetypes.py b/tests/datascience-notebook/test_mimetypes.py new file mode 100644 index 0000000..4fd8647 --- /dev/null +++ b/tests/datascience-notebook/test_mimetypes.py @@ -0,0 +1,9 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +from tests.conftest import TrackedContainer +from tests.R_mimetype_check import check_r_mimetypes + + +def test_mimetypes(container: TrackedContainer) -> None: + """Check if Rscript command for mimetypes can be executed""" + check_r_mimetypes(container) diff --git a/tests/datascience-notebook/test_pluto_datascience.py b/tests/datascience-notebook/test_pluto_datascience.py new file mode 100644 index 0000000..27c4aaf --- /dev/null +++ b/tests/datascience-notebook/test_pluto_datascience.py @@ -0,0 +1,13 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import requests + +from tests.conftest import TrackedContainer +from tests.pluto_check import check_pluto_proxy + + +def test_pluto_proxy( + container: TrackedContainer, http_client: requests.Session +) -> None: + """Pluto proxy starts Pluto correctly""" + check_pluto_proxy(container, http_client) diff --git a/tests/docker-stacks-foundation/run-hooks-change/a.sh b/tests/docker-stacks-foundation/run-hooks-change/a.sh new file mode 100644 index 0000000..61701e2 --- /dev/null +++ b/tests/docker-stacks-foundation/run-hooks-change/a.sh @@ -0,0 +1,6 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +export MY_VAR=123 +echo "Inside a.sh MY_VAR variable has ${MY_VAR} value" diff --git a/tests/docker-stacks-foundation/run-hooks-change/b.sh b/tests/docker-stacks-foundation/run-hooks-change/b.sh new file mode 100644 index 0000000..fdca974 --- /dev/null +++ b/tests/docker-stacks-foundation/run-hooks-change/b.sh @@ -0,0 +1,8 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +echo "Inside b.sh MY_VAR variable has ${MY_VAR} value" +echo "Changing value of MY_VAR" +export MY_VAR=456 +echo "After change inside b.sh MY_VAR variable has ${MY_VAR} value" diff --git a/tests/docker-stacks-foundation/run-hooks-change/c.sh b/tests/docker-stacks-foundation/run-hooks-change/c.sh new file mode 100644 index 0000000..ef69df3 --- /dev/null +++ b/tests/docker-stacks-foundation/run-hooks-change/c.sh @@ -0,0 +1,5 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +echo "Inside c.sh MY_VAR variable has ${MY_VAR} value" diff --git a/tests/docker-stacks-foundation/run-hooks-executables/executable.py b/tests/docker-stacks-foundation/run-hooks-executables/executable.py new file mode 100755 index 0000000..5fb2b9a --- /dev/null +++ b/tests/docker-stacks-foundation/run-hooks-executables/executable.py @@ -0,0 +1,5 @@ +#!/usr/bin/env python3 +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +print("Executable python file was successfully run") diff --git a/tests/docker-stacks-foundation/run-hooks-executables/non_executable.py b/tests/docker-stacks-foundation/run-hooks-executables/non_executable.py new file mode 100644 index 0000000..19c8d0b --- /dev/null +++ b/tests/docker-stacks-foundation/run-hooks-executables/non_executable.py @@ -0,0 +1,5 @@ +#!/usr/bin/env python3 +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +assert False diff --git a/tests/docker-stacks-foundation/run-hooks-executables/run-me.sh b/tests/docker-stacks-foundation/run-hooks-executables/run-me.sh new file mode 100644 index 0000000..f4dc08a --- /dev/null +++ b/tests/docker-stacks-foundation/run-hooks-executables/run-me.sh @@ -0,0 +1,5 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +export SOME_VAR=123 diff --git a/tests/docker-stacks-foundation/run-hooks-failures/a.sh b/tests/docker-stacks-foundation/run-hooks-failures/a.sh new file mode 100644 index 0000000..7dabeeb --- /dev/null +++ b/tests/docker-stacks-foundation/run-hooks-failures/a.sh @@ -0,0 +1,11 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +echo "Started: a.sh" + +export OTHER_VAR=456 + +run-unknown-command + +echo "Finished: a.sh" diff --git a/tests/docker-stacks-foundation/run-hooks-failures/b.py b/tests/docker-stacks-foundation/run-hooks-failures/b.py new file mode 100755 index 0000000..cc5b0a7 --- /dev/null +++ b/tests/docker-stacks-foundation/run-hooks-failures/b.py @@ -0,0 +1,12 @@ +#!/usr/bin/env python3 +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import os +import sys + +print("Started: b.py") +print(f"OTHER_VAR={os.environ['OTHER_VAR']}") + +sys.exit(1) + +print("Finished: b.py") diff --git a/tests/docker-stacks-foundation/run-hooks-failures/c.sh b/tests/docker-stacks-foundation/run-hooks-failures/c.sh new file mode 100644 index 0000000..a71e69f --- /dev/null +++ b/tests/docker-stacks-foundation/run-hooks-failures/c.sh @@ -0,0 +1,7 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +echo "Started: c.sh" + +run-unknown-command diff --git a/tests/docker-stacks-foundation/run-hooks-failures/d.sh b/tests/docker-stacks-foundation/run-hooks-failures/d.sh new file mode 100644 index 0000000..abc646a --- /dev/null +++ b/tests/docker-stacks-foundation/run-hooks-failures/d.sh @@ -0,0 +1,11 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +set -e + +echo "Started: d.sh" + +run-unknown-command + +echo "Finished: d.sh" diff --git a/tests/docker-stacks-foundation/run-hooks-unset/a.sh b/tests/docker-stacks-foundation/run-hooks-unset/a.sh new file mode 100644 index 0000000..61701e2 --- /dev/null +++ b/tests/docker-stacks-foundation/run-hooks-unset/a.sh @@ -0,0 +1,6 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +export MY_VAR=123 +echo "Inside a.sh MY_VAR variable has ${MY_VAR} value" diff --git a/tests/docker-stacks-foundation/run-hooks-unset/b.sh b/tests/docker-stacks-foundation/run-hooks-unset/b.sh new file mode 100644 index 0000000..ab64e93 --- /dev/null +++ b/tests/docker-stacks-foundation/run-hooks-unset/b.sh @@ -0,0 +1,7 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +echo "Inside b.sh MY_VAR variable has ${MY_VAR} value" +echo "Unsetting MY_VAR" +unset MY_VAR diff --git a/tests/docker-stacks-foundation/run-hooks-unset/c.sh b/tests/docker-stacks-foundation/run-hooks-unset/c.sh new file mode 100644 index 0000000..ef69df3 --- /dev/null +++ b/tests/docker-stacks-foundation/run-hooks-unset/c.sh @@ -0,0 +1,5 @@ +#!/bin/bash +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +echo "Inside c.sh MY_VAR variable has ${MY_VAR} value" diff --git a/tests/docker-stacks-foundation/test_outdated.py b/tests/docker-stacks-foundation/test_outdated.py new file mode 100644 index 0000000..6de18d3 --- /dev/null +++ b/tests/docker-stacks-foundation/test_outdated.py @@ -0,0 +1,22 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging + +import pytest # type: ignore + +from tests.conftest import TrackedContainer +from tests.package_helper import CondaPackageHelper + +LOGGER = logging.getLogger(__name__) + + +@pytest.mark.info +def test_outdated_packages( + container: TrackedContainer, requested_only: bool = True +) -> None: + """Getting the list of updatable packages""" + LOGGER.info(f"Checking outdated packages in {container.image_name} ...") + pkg_helper = CondaPackageHelper(container) + pkg_helper.check_updatable_packages(requested_only) + LOGGER.info(pkg_helper.get_outdated_summary(requested_only)) + LOGGER.info(f"\n{pkg_helper.get_outdated_table()}\n") diff --git a/tests/docker-stacks-foundation/test_package_managers.py b/tests/docker-stacks-foundation/test_package_managers.py new file mode 100644 index 0000000..29e0b64 --- /dev/null +++ b/tests/docker-stacks-foundation/test_package_managers.py @@ -0,0 +1,22 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import pytest # type: ignore + +from tests.conftest import TrackedContainer +from tests.run_command import run_command + + +@pytest.mark.parametrize( + "package_manager_command", + [ + "apt --version", + "conda --version", + "mamba --version", + "pip --version", + ], +) +def test_package_manager( + container: TrackedContainer, package_manager_command: str +) -> None: + """Test that package managers are installed and run.""" + run_command(container, package_manager_command) diff --git a/tests/docker-stacks-foundation/test_packages.py b/tests/docker-stacks-foundation/test_packages.py new file mode 100644 index 0000000..a1f7f75 --- /dev/null +++ b/tests/docker-stacks-foundation/test_packages.py @@ -0,0 +1,193 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +""" +test_packages +~~~~~~~~~~~~~~~ +This test module tests if the R and Python packages installed can be imported. +It's a basic test aiming to prove that the package is working properly. + +The goal is to detect import errors that can be caused by incompatibilities between packages, for example: + +- #1012: issue importing `sympy` +- #966: issue importing `pyarrow` + +This module checks dynamically, through the `CondaPackageHelper`, +only the requested packages i.e. packages requested by `mamba install` in the `Dockerfile`s. +This means that it does not check dependencies. +This choice is a tradeoff to cover the main requirements while achieving a reasonable test duration. +However, it could be easily changed (or completed) to cover dependencies as well. +Use `package_helper.installed_packages()` instead of `package_helper.requested_packages()`. + +Example: + + $ make test/docker-stacks-foundation + + # [...] + # tests/docker-stacks-foundation/test_packages.py::test_python_packages + # -------------------------------- live log setup -------------------------------- + # 2024-01-21 17:46:43 [ INFO] Starting container quay.io/jupyter/docker-stacks-foundation ... (package_helper.py:55) + # 2024-01-21 17:46:43 [ INFO] Running quay.io/jupyter/docker-stacks-foundation with args {'detach': True, 'tty': True, 'command': ['bash', '-c', 'sleep infinity']} ... (conftest.py:99) + # 2024-01-21 17:46:44 [ INFO] Grabbing the list of manually requested packages ... (package_helper.py:83) + # -------------------------------- live log call --------------------------------- + # 2024-01-21 17:46:44 [ INFO] Testing the import of packages ... (test_packages.py:151) + # 2024-01-21 17:46:44 [ INFO] Trying to import mamba (test_packages.py:153) + # 2024-01-21 17:46:44 [ INFO] Trying to import jupyter_core (test_packages.py:153) + PASSED [ 17%] + # ------------------------------ live log teardown ------------------------------- + # [...] + +""" + +import logging +from collections.abc import Iterable +from typing import Callable + +import pytest # type: ignore + +from tests.conftest import TrackedContainer +from tests.package_helper import CondaPackageHelper + +LOGGER = logging.getLogger(__name__) + +# Mapping between package and module name +PACKAGE_MAPPING = { + # Python + "beautifulsoup4": "bs4", + "jupyter-pluto-proxy": "jupyter_pluto_proxy", + "matplotlib-base": "matplotlib", + "pytables": "tables", + "scikit-image": "skimage", + "scikit-learn": "sklearn", + # R + "randomforest": "randomForest", + "rcurl": "RCurl", + "rodbc": "RODBC", + "rsqlite": "DBI", +} + +# List of packages that cannot be tested in a standard way +EXCLUDED_PACKAGES = [ + "bzip2", + "ca-certificates", + "conda-forge::blas[build=openblas]", + "grpcio-status", + "grpcio", + "hdf5", + "jupyterlab-git", + "openssl", + "pandas[version='>", + "protobuf", + "python", + "r-irkernel", + "unixodbc", +] + + +@pytest.fixture(scope="function") +def package_helper(container: TrackedContainer) -> CondaPackageHelper: + """Return a package helper object that can be used to perform tests on installed packages""" + return CondaPackageHelper(container) + + +@pytest.fixture(scope="function") +def packages(package_helper: CondaPackageHelper) -> dict[str, set[str]]: + """Return the list of requested packages (i.e. packages explicitly installed excluding dependencies)""" + return package_helper.requested_packages() + + +def get_package_import_name(package: str) -> str: + """Perform a mapping between the python package name and the name used for the import""" + return PACKAGE_MAPPING.get(package, package) + + +def excluded_package_predicate(package: str) -> bool: + """Return whether a package is excluded from the list + (i.e. a package that cannot be tested with standard imports)""" + return package in EXCLUDED_PACKAGES + + +def python_package_predicate(package: str) -> bool: + """Predicate matching python packages""" + return not excluded_package_predicate(package) and not r_package_predicate(package) + + +def r_package_predicate(package: str) -> bool: + """Predicate matching R packages""" + return not excluded_package_predicate(package) and package.startswith("r-") + + +def _check_import_package( + package_helper: CondaPackageHelper, command: list[str] +) -> None: + """Generic function executing a command""" + LOGGER.debug(f"Trying to import a package with [{command}] ...") + exec_result = package_helper.running_container.exec_run(command) + assert ( + exec_result.exit_code == 0 + ), f"Import package failed, output: {exec_result.output}" + + +def check_import_python_package( + package_helper: CondaPackageHelper, package: str +) -> None: + """Try to import a Python package from the command line""" + _check_import_package(package_helper, ["python", "-c", f"import {package}"]) + + +def check_import_r_package(package_helper: CondaPackageHelper, package: str) -> None: + """Try to import an R package from the command line""" + _check_import_package(package_helper, ["R", "--slave", "-e", f"library({package})"]) + + +def _check_import_packages( + package_helper: CondaPackageHelper, + packages_to_check: Iterable[str], + check_function: Callable[[CondaPackageHelper, str], None], +) -> None: + """Test if packages can be imported + + Note: using a list of packages instead of a fixture for the list of packages + since pytest prevents the use of multiple yields + """ + failures = {} + LOGGER.info("Testing the import of packages ...") + for package in packages_to_check: + LOGGER.info(f"Trying to import {package}") + try: + check_function(package_helper, package) + except AssertionError as err: + failures[package] = err + if len(failures) > 0: + raise AssertionError(failures) + + +@pytest.fixture(scope="function") +def r_packages(packages: dict[str, set[str]]) -> Iterable[str]: + """Return an iterable of R packages""" + # package[2:] is to remove the leading "r-" appended on R packages + return map( + lambda package: get_package_import_name(package[2:]), + filter(r_package_predicate, packages), + ) + + +def test_r_packages( + package_helper: CondaPackageHelper, r_packages: Iterable[str] +) -> None: + """Test the import of specified R packages""" + _check_import_packages(package_helper, r_packages, check_import_r_package) + + +@pytest.fixture(scope="function") +def python_packages(packages: dict[str, set[str]]) -> Iterable[str]: + """Return an iterable of Python packages""" + return map(get_package_import_name, filter(python_package_predicate, packages)) + + +def test_python_packages( + package_helper: CondaPackageHelper, + python_packages: Iterable[str], +) -> None: + """Test the import of specified python packages""" + _check_import_packages(package_helper, python_packages, check_import_python_package) diff --git a/tests/docker-stacks-foundation/test_python_version.py b/tests/docker-stacks-foundation/test_python_version.py new file mode 100644 index 0000000..559853a --- /dev/null +++ b/tests/docker-stacks-foundation/test_python_version.py @@ -0,0 +1,34 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging + +from tests.conftest import TrackedContainer + +LOGGER = logging.getLogger(__name__) +EXPECTED_PYTHON_VERSION = "3.11" + + +def test_python_version(container: TrackedContainer) -> None: + LOGGER.info( + f"Checking that python major.minor version is {EXPECTED_PYTHON_VERSION}" + ) + logs = container.run_and_wait( + timeout=5, + tty=True, + command=["python", "--version"], + ) + python = next(line for line in logs.splitlines() if line.startswith("Python ")) + full_version = python.split()[1] + major_minor_version = full_version[: full_version.rfind(".")] + + assert major_minor_version == EXPECTED_PYTHON_VERSION + + +def test_python_pinned_version(container: TrackedContainer) -> None: + LOGGER.info(f"Checking that pinned python version is {EXPECTED_PYTHON_VERSION}.*") + logs = container.run_and_wait( + timeout=5, + tty=True, + command=["cat", "/opt/conda/conda-meta/pinned"], + ) + assert f"python {EXPECTED_PYTHON_VERSION}.*" in logs diff --git a/tests/docker-stacks-foundation/test_run_hooks.py b/tests/docker-stacks-foundation/test_run_hooks.py new file mode 100644 index 0000000..87467f9 --- /dev/null +++ b/tests/docker-stacks-foundation/test_run_hooks.py @@ -0,0 +1,147 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging +from pathlib import Path + +from tests.conftest import TrackedContainer + +LOGGER = logging.getLogger(__name__) +THIS_DIR = Path(__file__).parent.resolve() + + +def test_run_hooks_zero_args(container: TrackedContainer) -> None: + logs = container.run_and_wait( + timeout=5, + tty=True, + no_failure=False, + command=["bash", "-c", "source /usr/local/bin/run-hooks.sh"], + ) + assert "Should pass exactly one directory" in logs + + +def test_run_hooks_two_args(container: TrackedContainer) -> None: + logs = container.run_and_wait( + timeout=5, + tty=True, + no_failure=False, + command=[ + "bash", + "-c", + "source /usr/local/bin/run-hooks.sh first-arg second-arg", + ], + ) + assert "Should pass exactly one directory" in logs + + +def test_run_hooks_missing_dir(container: TrackedContainer) -> None: + logs = container.run_and_wait( + timeout=5, + tty=True, + no_failure=False, + command=[ + "bash", + "-c", + "source /usr/local/bin/run-hooks.sh /tmp/missing-dir/", + ], + ) + assert "Directory /tmp/missing-dir/ doesn't exist or is not a directory" in logs + + +def test_run_hooks_dir_is_file(container: TrackedContainer) -> None: + logs = container.run_and_wait( + timeout=5, + tty=True, + no_failure=False, + command=[ + "bash", + "-c", + "touch /tmp/some-file && source /usr/local/bin/run-hooks.sh /tmp/some-file", + ], + ) + assert "Directory /tmp/some-file doesn't exist or is not a directory" in logs + + +def test_run_hooks_empty_dir(container: TrackedContainer) -> None: + container.run_and_wait( + timeout=5, + tty=True, + command=[ + "bash", + "-c", + "mkdir /tmp/empty-dir && source /usr/local/bin/run-hooks.sh /tmp/empty-dir/", + ], + ) + + +def run_source_in_dir( + container: TrackedContainer, + subdir: str, + command_suffix: str = "", + no_failure: bool = True, +) -> str: + host_data_dir = THIS_DIR / subdir + cont_data_dir = "/home/jovyan/data" + # https://forums.docker.com/t/all-files-appear-as-executable-in-file-paths-using-bind-mount/99921 + # Unfortunately, Docker treats all files in mounter dir as executable files + # So we make a copy of the mounted dir inside a container + command = ( + "cp -r /home/jovyan/data/ /home/jovyan/data-copy/ &&" + "source /usr/local/bin/run-hooks.sh /home/jovyan/data-copy/" + command_suffix + ) + return container.run_and_wait( + timeout=5, + volumes={str(host_data_dir): {"bind": cont_data_dir, "mode": "ro"}}, + tty=True, + no_failure=no_failure, + command=["bash", "-c", command], + ) + + +def test_run_hooks_executables(container: TrackedContainer) -> None: + logs = run_source_in_dir( + container, + subdir="run-hooks-executables", + command_suffix="&& echo SOME_VAR is ${SOME_VAR}", + ) + + assert "Executable python file was successfully run" in logs + assert "Ignoring non-executable: /home/jovyan/data-copy//non_executable.py" in logs + assert "SOME_VAR is 123" in logs + + +def test_run_hooks_with_failures(container: TrackedContainer) -> None: + logs = run_source_in_dir(container, subdir="run-hooks-failures", no_failure=False) + + for file in ["a.sh", "b.py", "c.sh", "d.sh"]: + assert f"Started: {file}" in logs + + for file in ["a.sh"]: + assert f"Finished: {file}" in logs + for file in ["b.py", "c.sh", "d.sh"]: + assert f"Finished: {file}" not in logs + + for file in ["b.py", "c.sh"]: + assert ( + f"/home/jovyan/data-copy//{file} has failed, continuing execution" in logs + ) + + assert "OTHER_VAR=456" in logs + + +def test_run_hooks_unset(container: TrackedContainer) -> None: + logs = run_source_in_dir(container, subdir="run-hooks-unset") + + assert "Inside a.sh MY_VAR variable has 123 value" in logs + assert "Inside b.sh MY_VAR variable has 123 value" in logs + assert "Unsetting MY_VAR" in logs + assert "Inside c.sh MY_VAR variable has value" in logs + + +def test_run_hooks_change(container: TrackedContainer) -> None: + logs = run_source_in_dir(container, subdir="run-hooks-change") + + assert "Inside a.sh MY_VAR variable has 123 value" in logs + assert "Inside b.sh MY_VAR variable has 123 value" in logs + assert "Changing value of MY_VAR" in logs + assert "After change inside b.sh MY_VAR variable has 456 value" in logs + assert "Inside c.sh MY_VAR variable has 456 value" in logs diff --git a/tests/docker-stacks-foundation/test_units.py b/tests/docker-stacks-foundation/test_units.py new file mode 100644 index 0000000..cfdbc83 --- /dev/null +++ b/tests/docker-stacks-foundation/test_units.py @@ -0,0 +1,38 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging + +from tests.conftest import TrackedContainer +from tests.images_hierarchy import get_test_dirs + +LOGGER = logging.getLogger(__name__) + + +def test_units(container: TrackedContainer) -> None: + """Various units tests + Add a py file in the `tests//units` dir, and it will be automatically tested + """ + short_image_name = container.image_name[container.image_name.rfind("/") + 1 :] + LOGGER.info(f"Running unit tests for: {short_image_name}") + + test_dirs = get_test_dirs(short_image_name) + + for test_dir in test_dirs: + host_data_dir = test_dir / "units" + LOGGER.info(f"Searching for units tests in {host_data_dir}") + cont_data_dir = "/home/jovyan/data" + + if not host_data_dir.exists(): + LOGGER.info(f"Not found unit tests for image: {container.image_name}") + continue + + for test_file in host_data_dir.iterdir(): + test_file_name = test_file.name + LOGGER.info(f"Running unit test: {test_file_name}") + + container.run_and_wait( + timeout=30, + volumes={str(host_data_dir): {"bind": cont_data_dir, "mode": "ro"}}, + tty=True, + command=["python", f"{cont_data_dir}/{test_file_name}"], + ) diff --git a/tests/docker-stacks-foundation/test_user_options.py b/tests/docker-stacks-foundation/test_user_options.py new file mode 100644 index 0000000..fb2b462 --- /dev/null +++ b/tests/docker-stacks-foundation/test_user_options.py @@ -0,0 +1,307 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging +import pathlib +import time + +import pytest # type: ignore + +from tests.conftest import TrackedContainer + +LOGGER = logging.getLogger(__name__) + + +def test_uid_change(container: TrackedContainer) -> None: + """Container should change the UID of the default user.""" + logs = container.run_and_wait( + timeout=120, # usermod is slow so give it some time + tty=True, + user="root", + environment=["NB_UID=1010"], + command=["bash", "-c", "id && touch /opt/conda/test-file"], + ) + assert "uid=1010(jovyan)" in logs + + +def test_gid_change(container: TrackedContainer) -> None: + """Container should change the GID of the default user.""" + logs = container.run_and_wait( + timeout=10, + tty=True, + user="root", + environment=["NB_GID=110"], + command=["id"], + ) + assert "gid=110(jovyan)" in logs + assert "groups=110(jovyan),100(users)" in logs + + +def test_nb_user_change(container: TrackedContainer) -> None: + """Container should change the username (`NB_USER`) of the default user.""" + nb_user = "nayvoj" + running_container = container.run_detached( + tty=True, + user="root", + environment=[f"NB_USER={nb_user}", "CHOWN_HOME=yes"], + command=["bash", "-c", "sleep infinity"], + ) + + # Give the chown time to complete. + # Use sleep, not wait, because the container sleeps forever. + time.sleep(1) + LOGGER.info(f"Checking if the user is changed to {nb_user} by the start script ...") + output = running_container.logs().decode("utf-8") + assert "ERROR" not in output + assert "WARNING" not in output + assert ( + f"username: jovyan -> {nb_user}" in output + ), f"User is not changed to {nb_user}" + + LOGGER.info(f"Checking {nb_user} id ...") + command = "id" + expected_output = f"uid=1000({nb_user}) gid=100(users) groups=100(users)" + cmd = running_container.exec_run(command, user=nb_user, workdir=f"/home/{nb_user}") + output = cmd.output.decode("utf-8").strip("\n") + assert output == expected_output, f"Bad user {output}, expected {expected_output}" + + LOGGER.info(f"Checking if {nb_user} owns his home folder ...") + command = f'stat -c "%U %G" /home/{nb_user}/' + expected_output = f"{nb_user} users" + cmd = running_container.exec_run(command, workdir=f"/home/{nb_user}") + output = cmd.output.decode("utf-8").strip("\n") + assert ( + output == expected_output + ), f"Bad owner for the {nb_user} home folder {output}, expected {expected_output}" + + LOGGER.info( + f"Checking if a home folder of {nb_user} contains the 'work' folder with appropriate permissions ..." + ) + command = f'stat -c "%F %U %G" /home/{nb_user}/work' + expected_output = f"directory {nb_user} users" + cmd = running_container.exec_run(command, workdir=f"/home/{nb_user}") + output = cmd.output.decode("utf-8").strip("\n") + assert ( + output == expected_output + ), f"Folder work was not copied properly to {nb_user} home folder. stat: {output}, expected {expected_output}" + + +def test_chown_extra(container: TrackedContainer) -> None: + """Container should change the UID/GID of a comma-separated + CHOWN_EXTRA list of folders.""" + logs = container.run_and_wait( + timeout=120, # chown is slow so give it some time + tty=True, + user="root", + environment=[ + "NB_UID=1010", + "NB_GID=101", + "CHOWN_EXTRA=/home/jovyan,/opt/conda/bin", + "CHOWN_EXTRA_OPTS=-R", + ], + command=[ + "bash", + "-c", + "stat -c '%n:%u:%g' /home/jovyan/.bashrc /opt/conda/bin/jupyter", + ], + ) + assert "/home/jovyan/.bashrc:1010:101" in logs + assert "/opt/conda/bin/jupyter:1010:101" in logs + + +def test_chown_home(container: TrackedContainer) -> None: + """Container should change the NB_USER home directory owner and + group to the current value of NB_UID and NB_GID.""" + logs = container.run_and_wait( + timeout=120, # chown is slow so give it some time + tty=True, + user="root", + environment=[ + "CHOWN_HOME=yes", + "CHOWN_HOME_OPTS=-R", + "NB_USER=kitten", + "NB_UID=1010", + "NB_GID=101", + ], + command=["bash", "-c", "stat -c '%n:%u:%g' /home/kitten/.bashrc"], + ) + assert "/home/kitten/.bashrc:1010:101" in logs + + +def test_sudo(container: TrackedContainer) -> None: + """Container should grant passwordless sudo to the default user.""" + logs = container.run_and_wait( + timeout=10, + tty=True, + user="root", + environment=["GRANT_SUDO=yes"], + command=["sudo", "id"], + ) + assert "uid=0(root)" in logs + + +def test_sudo_path(container: TrackedContainer) -> None: + """Container should include /opt/conda/bin in the sudo secure_path.""" + logs = container.run_and_wait( + timeout=10, + tty=True, + user="root", + environment=["GRANT_SUDO=yes"], + command=["sudo", "which", "jupyter"], + ) + assert logs.rstrip().endswith("/opt/conda/bin/jupyter") + + +def test_sudo_path_without_grant(container: TrackedContainer) -> None: + """Container should include /opt/conda/bin in the sudo secure_path.""" + logs = container.run_and_wait( + timeout=10, + tty=True, + user="root", + command=["which", "jupyter"], + ) + assert logs.rstrip().endswith("/opt/conda/bin/jupyter") + + +def test_group_add(container: TrackedContainer) -> None: + """Container should run with the specified uid, gid, and secondary + group. It won't be possible to modify /etc/passwd since gid is nonzero, so + additionally verify that setting gid=0 is suggested in a warning. + """ + logs = container.run_and_wait( + timeout=5, + no_warnings=False, + user="1010:1010", + group_add=["users"], # Ensures write access to /home/jovyan + command=["id"], + ) + warnings = TrackedContainer.get_warnings(logs) + assert len(warnings) == 1 + assert "Try setting gid=0" in warnings[0] + assert "uid=1010 gid=1010 groups=1010,100(users)" in logs + + +def test_set_uid(container: TrackedContainer) -> None: + """Container should run with the specified uid and NB_USER. + The /home/jovyan directory will not be writable since it's owned by 1000:users. + Additionally, verify that "--group-add=users" is suggested in a warning to restore + write access. + """ + logs = container.run_and_wait( + timeout=5, + no_warnings=False, + user="1010", + command=["id"], + ) + assert "uid=1010(jovyan) gid=0(root)" in logs + warnings = TrackedContainer.get_warnings(logs) + assert len(warnings) == 1 + assert "--group-add=users" in warnings[0] + + +def test_set_uid_and_nb_user(container: TrackedContainer) -> None: + """Container should run with the specified uid and NB_USER.""" + logs = container.run_and_wait( + timeout=5, + no_warnings=False, + user="1010", + environment=["NB_USER=kitten"], + group_add=["users"], # Ensures write access to /home/jovyan + command=["id"], + ) + assert "uid=1010(kitten) gid=0(root)" in logs + warnings = TrackedContainer.get_warnings(logs) + assert len(warnings) == 1 + assert "user is kitten but home is /home/jovyan" in warnings[0] + + +def test_container_not_delete_bind_mount( + container: TrackedContainer, tmp_path: pathlib.Path +) -> None: + """Container should not delete host system files when using the (docker) + -v bind mount flag and mapping to /home/jovyan. + """ + d = tmp_path / "data" + d.mkdir() + p = d / "foo.txt" + p.write_text("some-content") + + container.run_and_wait( + timeout=5, + tty=True, + user="root", + working_dir="/home/", + environment=[ + "NB_USER=user", + "CHOWN_HOME=yes", + ], + volumes={d: {"bind": "/home/jovyan/data", "mode": "rw"}}, + command=["ls"], + ) + assert p.read_text() == "some-content" + assert len(list(tmp_path.iterdir())) == 1 + + +@pytest.mark.parametrize("enable_root", [False, True]) +def test_jupyter_env_vars_to_unset( + container: TrackedContainer, enable_root: bool +) -> None: + """Environment variables names listed in JUPYTER_ENV_VARS_TO_UNSET + should be unset in the final environment.""" + root_args = {"user": "root"} if enable_root else {} + logs = container.run_and_wait( + timeout=10, + tty=True, + environment=[ + "JUPYTER_ENV_VARS_TO_UNSET=SECRET_ANIMAL,UNUSED_ENV,SECRET_FRUIT", + "FRUIT=bananas", + "SECRET_ANIMAL=cats", + "SECRET_FRUIT=mango", + ], + command=[ + "bash", + "-c", + "echo I like ${FRUIT} and ${SECRET_FRUIT:-stuff}, and love ${SECRET_ANIMAL:-to keep secrets}!", + ], + **root_args, # type: ignore + ) + assert "I like bananas and stuff, and love to keep secrets!" in logs + + +def test_secure_path(container: TrackedContainer, tmp_path: pathlib.Path) -> None: + """Make sure that the sudo command has conda's python (not system's) on PATH. + See . + """ + d = tmp_path / "data" + d.mkdir() + p = d / "wrong_python.sh" + p.write_text('#!/bin/bash\necho "Wrong python executable invoked!"') + p.chmod(0o755) + + logs = container.run_and_wait( + timeout=5, + tty=True, + user="root", + volumes={p: {"bind": "/usr/bin/python", "mode": "ro"}}, + command=["python", "--version"], + ) + assert "Wrong python" not in logs + assert "Python" in logs + + +def test_startsh_multiple_exec(container: TrackedContainer) -> None: + """If start.sh is executed multiple times check that configuration only occurs once.""" + logs = container.run_and_wait( + timeout=10, + no_warnings=False, + tty=True, + user="root", + environment=["GRANT_SUDO=yes"], + command=["start.sh", "sudo", "id"], + ) + assert "uid=0(root)" in logs + warnings = TrackedContainer.get_warnings(logs) + assert len(warnings) == 1 + assert ( + "WARNING: start.sh is the default ENTRYPOINT, do not include it in CMD" + in warnings[0] + ) diff --git a/tests/images_hierarchy.py b/tests/images_hierarchy.py new file mode 100644 index 0000000..193ec27 --- /dev/null +++ b/tests/images_hierarchy.py @@ -0,0 +1,34 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +from pathlib import Path +from typing import Optional + +THIS_DIR = Path(__file__).parent.resolve() + +# Please, take a look at the hierarchy of the images here: +# https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html#image-relationships +ALL_IMAGES = { + "docker-stacks-foundation": None, + "base-notebook": "docker-stacks-foundation", + "minimal-notebook": "base-notebook", + "scipy-notebook": "minimal-notebook", + "r-notebook": "minimal-notebook", + "julia-notebook": "minimal-notebook", + "tensorflow-notebook": "scipy-notebook", + "pytorch-notebook": "scipy-notebook", + "datascience-notebook": "scipy-notebook", + "pyspark-notebook": "scipy-notebook", + "all-spark-notebook": "pyspark-notebook", +} + + +def get_test_dirs( + short_image_name: Optional[str], +) -> list[Path]: + if short_image_name is None: + return [] + + test_dirs = get_test_dirs(ALL_IMAGES[short_image_name]) + if (current_image_tests_dir := THIS_DIR / short_image_name).exists(): + test_dirs.append(current_image_tests_dir) + return test_dirs diff --git a/tests/julia-notebook/test_julia.py b/tests/julia-notebook/test_julia.py new file mode 100644 index 0000000..3b1a55b --- /dev/null +++ b/tests/julia-notebook/test_julia.py @@ -0,0 +1,8 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +from tests.conftest import TrackedContainer +from tests.run_command import run_command + + +def test_julia(container: TrackedContainer) -> None: + run_command(container, "julia --version") diff --git a/tests/julia-notebook/test_pluto.py b/tests/julia-notebook/test_pluto.py new file mode 100644 index 0000000..27c4aaf --- /dev/null +++ b/tests/julia-notebook/test_pluto.py @@ -0,0 +1,13 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import requests + +from tests.conftest import TrackedContainer +from tests.pluto_check import check_pluto_proxy + + +def test_pluto_proxy( + container: TrackedContainer, http_client: requests.Session +) -> None: + """Pluto proxy starts Pluto correctly""" + check_pluto_proxy(container, http_client) diff --git a/tests/minimal-notebook/data/Jupyter_logo.svg b/tests/minimal-notebook/data/Jupyter_logo.svg new file mode 100644 index 0000000..ab25508 --- /dev/null +++ b/tests/minimal-notebook/data/Jupyter_logo.svg @@ -0,0 +1,90 @@ + +Group.svg +Created using Figma 0.90 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/minimal-notebook/data/notebook_math.ipynb b/tests/minimal-notebook/data/notebook_math.ipynb new file mode 100644 index 0000000..5b028b1 --- /dev/null +++ b/tests/minimal-notebook/data/notebook_math.ipynb @@ -0,0 +1,138 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "a69ceb22", + "metadata": {}, + "source": [ + "# A simple SymPy example" + ] + }, + { + "cell_type": "markdown", + "id": "3c43c88e", + "metadata": {}, + "source": [ + "First we import SymPy and initialize printing:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "7b561917", + "metadata": { + "jupyter": { + "outputs_hidden": false + } + }, + "outputs": [], + "source": [ + "from sympy import diff, init_printing, integrate, sin, symbols" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d6454356-d5a6-481f-aaac-9abcc101026a", + "metadata": {}, + "outputs": [], + "source": [ + "init_printing()" + ] + }, + { + "cell_type": "markdown", + "id": "fbe0a2f3", + "metadata": {}, + "source": [ + "Create a few symbols:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c99d7f17", + "metadata": { + "jupyter": { + "outputs_hidden": false + } + }, + "outputs": [], + "source": [ + "x, y, z = symbols(\"x y z\")" + ] + }, + { + "cell_type": "markdown", + "id": "f61dddac", + "metadata": {}, + "source": [ + "Here is a basic expression:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "0cfde73c", + "metadata": { + "jupyter": { + "outputs_hidden": false + } + }, + "outputs": [], + "source": [ + "e = x**2 + 2.0 * y + sin(z)\n", + "e" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cb7eb1ad", + "metadata": { + "jupyter": { + "outputs_hidden": false + } + }, + "outputs": [], + "source": [ + "diff(e, x)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "07441ea9", + "metadata": { + "jupyter": { + "outputs_hidden": false + } + }, + "outputs": [], + "source": [ + "integrate(e, z)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/tests/minimal-notebook/data/notebook_svg.ipynb b/tests/minimal-notebook/data/notebook_svg.ipynb new file mode 100644 index 0000000..08cdec1 --- /dev/null +++ b/tests/minimal-notebook/data/notebook_svg.ipynb @@ -0,0 +1,43 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from IPython.display import SVG, display" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "display(SVG(filename=\"Jupyter_logo.svg\"))" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.10" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/tests/minimal-notebook/test_nbconvert.py b/tests/minimal-notebook/test_nbconvert.py new file mode 100644 index 0000000..9c1c017 --- /dev/null +++ b/tests/minimal-notebook/test_nbconvert.py @@ -0,0 +1,34 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging +from pathlib import Path + +import pytest # type: ignore + +from tests.conftest import TrackedContainer + +LOGGER = logging.getLogger(__name__) +THIS_DIR = Path(__file__).parent.resolve() + + +@pytest.mark.parametrize("test_file", ["notebook_math", "notebook_svg"]) +@pytest.mark.parametrize("output_format", ["pdf", "html"]) +def test_nbconvert( + container: TrackedContainer, test_file: str, output_format: str +) -> None: + """Check if nbconvert is able to convert a notebook file""" + host_data_dir = THIS_DIR / "data" + cont_data_dir = "/home/jovyan/data" + output_dir = "/tmp" + LOGGER.info( + f"Test that the example notebook {test_file} can be converted to {output_format} ..." + ) + command = f"jupyter nbconvert {cont_data_dir}/{test_file}.ipynb --output-dir {output_dir} --to {output_format}" + logs = container.run_and_wait( + timeout=30, + volumes={str(host_data_dir): {"bind": cont_data_dir, "mode": "ro"}}, + tty=True, + command=["bash", "-c", command], + ) + expected_file = f"{output_dir}/{test_file}.{output_format}" + assert expected_file in logs, f"Expected file {expected_file} not generated" diff --git a/tests/package_helper.py b/tests/package_helper.py new file mode 100644 index 0000000..2fe85f5 --- /dev/null +++ b/tests/package_helper.py @@ -0,0 +1,209 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +# CondaPackageHelper is partially based on the work https://oerpli.github.io/post/2019/06/conda-outdated/. +# See copyright below. +# +# MIT License +# Copyright (c) 2019 Abraham Hinteregger +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. + +import json +import logging +import re +from collections import defaultdict +from itertools import chain +from typing import Any, Optional + +from docker.models.containers import Container +from tabulate import tabulate + +from tests.conftest import TrackedContainer + +LOGGER = logging.getLogger(__name__) + + +class CondaPackageHelper: + """Conda package helper permitting to get information about packages""" + + def __init__(self, container: TrackedContainer): + self.running_container: Container = CondaPackageHelper.start_container( + container + ) + self.requested: Optional[dict[str, set[str]]] = None + self.installed: Optional[dict[str, set[str]]] = None + self.available: Optional[dict[str, set[str]]] = None + self.comparison: list[dict[str, str]] = [] + + @staticmethod + def start_container(container: TrackedContainer) -> Container: + """Start the TrackedContainer and return an instance of a running container""" + LOGGER.info(f"Starting container {container.image_name} ...") + return container.run_detached( + tty=True, + command=["bash", "-c", "sleep infinity"], + ) + + @staticmethod + def _conda_export_command(from_history: bool) -> list[str]: + """Return the mamba export command with or without history""" + cmd = ["mamba", "env", "export", "-n", "base", "--json", "--no-builds"] + if from_history: + cmd.append("--from-history") + return cmd + + def installed_packages(self) -> dict[str, set[str]]: + """Return the installed packages""" + if self.installed is None: + LOGGER.info("Grabbing the list of installed packages ...") + self.installed = CondaPackageHelper._packages_from_json( + self._execute_command( + CondaPackageHelper._conda_export_command(from_history=False) + ) + ) + return self.installed + + def requested_packages(self) -> dict[str, set[str]]: + """Return the requested package (i.e. `mamba install `)""" + if self.requested is None: + LOGGER.info("Grabbing the list of manually requested packages ...") + self.requested = CondaPackageHelper._packages_from_json( + self._execute_command( + CondaPackageHelper._conda_export_command(from_history=True) + ) + ) + return self.requested + + def _execute_command(self, command: list[str]) -> str: + """Execute a command on a running container""" + rc = self.running_container.exec_run(command) + return rc.output.decode("utf-8") # type: ignore + + @staticmethod + def _packages_from_json(env_export: str) -> dict[str, set[str]]: + """Extract packages and versions from the lines returned by the list of specifications""" + # dependencies = filter(lambda x: isinstance(x, str), json.loads(env_export).get("dependencies")) + dependencies = json.loads(env_export).get("dependencies") + # Filtering packages installed through pip in this case it's a dict {'pip': ['toree==0.3.0']} + # Since we only manage packages installed through mamba here + dependencies = filter(lambda x: isinstance(x, str), dependencies) + packages_dict: dict[str, set[str]] = dict() + for split in map(lambda x: re.split("=?=", x), dependencies): + # default values + package = split[0] + version = set() + # This normally means we have package=version notation + if len(split) > 1: + # checking if it's a proper version by testing if the first char is a digit + if split[1][0].isdigit(): + # package + version case + version = set(split[1:]) + # The split was incorrect and the package shall not be split + else: + package = f"{split[0]}={split[1]}" + packages_dict[package] = version + return packages_dict + + def available_packages(self) -> dict[str, set[str]]: + """Return the available packages""" + if self.available is None: + LOGGER.info( + "Grabbing the list of available packages (can take a while) ..." + ) + # Keeping command line output since `mamba search --outdated --json` is way too long ... + self.available = CondaPackageHelper._extract_available( + self._execute_command(["mamba", "search", "--outdated", "--quiet"]) + ) + return self.available + + @staticmethod + def _extract_available(lines: str) -> dict[str, set[str]]: + """Extract packages and versions from the lines returned by the list of packages""" + ddict = defaultdict(set) + for line in lines.splitlines()[2:]: + match = re.match(r"^(\S+)\s+(\S+)", line, re.MULTILINE) + assert match is not None + pkg, version = match.groups() + ddict[pkg].add(version) + return ddict + + def check_updatable_packages( + self, requested_only: bool = True + ) -> list[dict[str, str]]: + """Check the updatable packages including or not dependencies""" + requested = self.requested_packages() + installed = self.installed_packages() + available = self.available_packages() + self.comparison = [] + for pkg, inst_vs in installed.items(): + if not requested_only or pkg in requested: + avail_vs = sorted( + list(available[pkg]), key=CondaPackageHelper.semantic_cmp + ) + if not avail_vs: + continue + current = min(inst_vs, key=CondaPackageHelper.semantic_cmp) + newest = avail_vs[-1] + if ( + avail_vs + and current != newest + and CondaPackageHelper.semantic_cmp(current) + < CondaPackageHelper.semantic_cmp(newest) + ): + self.comparison.append( + {"Package": pkg, "Current": current, "Newest": newest} + ) + return self.comparison + + @staticmethod + def semantic_cmp(version_string: str) -> Any: + """Manage semantic versioning for comparison""" + + def my_split(string: str) -> list[Any]: + def version_substrs(x: str) -> list[str]: + return re.findall(r"([A-z]+|\d+)", x) + + return list(chain(map(version_substrs, string.split(".")))) + + def str_ord(string: str) -> int: + num = 0 + for char in string: + num *= 255 + num += ord(char) + return num + + def try_int(version_str: str) -> int: + try: + return int(version_str) + except ValueError: + return str_ord(version_str) + + mss = list(chain(*my_split(version_string))) + return tuple(map(try_int, mss)) + + def get_outdated_summary(self, requested_only: bool = True) -> str: + """Return a summary of outdated packages""" + packages = self.requested if requested_only else self.installed + assert packages is not None + nb_packages = len(packages) + nb_updatable = len(self.comparison) + updatable_ratio = nb_updatable / nb_packages + return f"{nb_updatable}/{nb_packages} ({updatable_ratio:.0%}) packages could be updated" + + def get_outdated_table(self) -> str: + """Return a table of outdated packages""" + return tabulate(self.comparison, headers="keys") diff --git a/tests/pluto_check.py b/tests/pluto_check.py new file mode 100644 index 0000000..48116db --- /dev/null +++ b/tests/pluto_check.py @@ -0,0 +1,30 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging +import secrets +import time + +import requests + +from tests.conftest import TrackedContainer, find_free_port + +LOGGER = logging.getLogger(__name__) + + +def check_pluto_proxy( + container: TrackedContainer, http_client: requests.Session +) -> None: + host_port = find_free_port() + token = secrets.token_hex() + container.run_detached( + command=[ + "start-notebook.py", + f"--IdentityProvider.token={token}", + ], + ports={"8888/tcp": host_port}, + ) + # Give the server a bit of time to start + time.sleep(2) + resp = http_client.get(f"http://localhost:{host_port}/pluto?token={token}") + resp.raise_for_status() + assert "Pluto.jl notebooks" in resp.text, "Pluto.jl text not found in /pluto page" diff --git a/tests/pyspark-notebook/test_spark.py b/tests/pyspark-notebook/test_spark.py new file mode 100644 index 0000000..211432f --- /dev/null +++ b/tests/pyspark-notebook/test_spark.py @@ -0,0 +1,14 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging + +from tests.conftest import TrackedContainer +from tests.run_command import run_command + +LOGGER = logging.getLogger(__name__) + + +def test_spark_shell(container: TrackedContainer) -> None: + """Checking if Spark (spark-shell) is running properly""" + logs = run_command(container, 'spark-shell <<< "1+1"', timeout=60) + assert "res0: Int = 2" in logs, "spark-shell does not work" diff --git a/tests/pyspark-notebook/units/unit_pandas_version.py b/tests/pyspark-notebook/units/unit_pandas_version.py new file mode 100644 index 0000000..03920db --- /dev/null +++ b/tests/pyspark-notebook/units/unit_pandas_version.py @@ -0,0 +1,5 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import pandas + +assert pandas.__version__ == "2.0.3" diff --git a/tests/pyspark-notebook/units/unit_spark.py b/tests/pyspark-notebook/units/unit_spark.py new file mode 100644 index 0000000..b6413fa --- /dev/null +++ b/tests/pyspark-notebook/units/unit_spark.py @@ -0,0 +1,3 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import pyspark # noqa: F401 diff --git a/tests/pytest.ini b/tests/pytest.ini new file mode 100644 index 0000000..49f609a --- /dev/null +++ b/tests/pytest.ini @@ -0,0 +1,8 @@ +[pytest] +addopts = -ra --color=yes +log_cli = 1 +log_cli_level = DEBUG +log_cli_format = %(asctime)s [%(levelname)8s] %(message)s (%(filename)s:%(lineno)s) +log_cli_date_format=%Y-%m-%d %H:%M:%S +markers = + info: marks tests as info (deselect with '-m "not info"') diff --git a/tests/pytorch-notebook/units/unit_pytorch.py b/tests/pytorch-notebook/units/unit_pytorch.py new file mode 100644 index 0000000..1b739a5 --- /dev/null +++ b/tests/pytorch-notebook/units/unit_pytorch.py @@ -0,0 +1,5 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import torch + +print(torch.tensor([[1.0, 4.0, 7.0], [4.0, 9.0, 11.0]])) diff --git a/tests/r-notebook/test_R_mimetypes.py b/tests/r-notebook/test_R_mimetypes.py new file mode 100644 index 0000000..4fd8647 --- /dev/null +++ b/tests/r-notebook/test_R_mimetypes.py @@ -0,0 +1,9 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +from tests.conftest import TrackedContainer +from tests.R_mimetype_check import check_r_mimetypes + + +def test_mimetypes(container: TrackedContainer) -> None: + """Check if Rscript command for mimetypes can be executed""" + check_r_mimetypes(container) diff --git a/tests/run_command.py b/tests/run_command.py new file mode 100644 index 0000000..48e3cc0 --- /dev/null +++ b/tests/run_command.py @@ -0,0 +1,22 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging + +from tests.conftest import TrackedContainer + +LOGGER = logging.getLogger(__name__) + + +def run_command( + container: TrackedContainer, + command: str, + timeout: int = 5, +) -> str: + """Runs the given package manager with its version argument.""" + + LOGGER.info(f"Test that the command '{command}' is working properly ...") + return container.run_and_wait( + timeout=timeout, + tty=True, + command=["bash", "-c", command], + ) diff --git a/tests/run_tests.py b/tests/run_tests.py new file mode 100755 index 0000000..90529e7 --- /dev/null +++ b/tests/run_tests.py @@ -0,0 +1,59 @@ +#!/usr/bin/env python3 +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import argparse +import logging + +import plumbum + +from tests.images_hierarchy import get_test_dirs + +python3 = plumbum.local["python3"] + +LOGGER = logging.getLogger(__name__) + + +def test_image(short_image_name: str, registry: str, owner: str) -> None: + LOGGER.info(f"Testing image: {short_image_name}") + test_dirs = get_test_dirs(short_image_name) + LOGGER.info(f"Test dirs to be run: {test_dirs}") + with plumbum.local.env(TEST_IMAGE=f"{registry}/{owner}/{short_image_name}"): + ( + python3[ + "-m", + "pytest", + "--numprocesses", + "auto", + "-m", + "not info", + test_dirs, + ] + & plumbum.FG + ) + + +if __name__ == "__main__": + logging.basicConfig(level=logging.INFO) + + arg_parser = argparse.ArgumentParser() + arg_parser.add_argument( + "--short-image-name", + required=True, + help="Short image name", + ) + arg_parser.add_argument( + "--registry", + required=True, + type=str, + choices=["docker.io", "quay.io"], + help="Image registry", + ) + arg_parser.add_argument( + "--owner", + required=True, + help="Owner of the image", + ) + + args = arg_parser.parse_args() + + test_image(args.short_image_name, args.registry, args.owner) diff --git a/tests/scipy-notebook/data/cython/helloworld.pyx b/tests/scipy-notebook/data/cython/helloworld.pyx new file mode 100644 index 0000000..ad35e5a --- /dev/null +++ b/tests/scipy-notebook/data/cython/helloworld.pyx @@ -0,0 +1 @@ +print("Hello World") diff --git a/tests/scipy-notebook/data/cython/setup.py b/tests/scipy-notebook/data/cython/setup.py new file mode 100644 index 0000000..2ad2140 --- /dev/null +++ b/tests/scipy-notebook/data/cython/setup.py @@ -0,0 +1,6 @@ +# These lines are not sorted by isort on purpose +# see: https://stackoverflow.com/a/53356077/4881441 +from setuptools import setup # isort:skip +from Cython.Build import cythonize # isort:skip + +setup(ext_modules=cythonize("helloworld.pyx")) diff --git a/tests/scipy-notebook/data/matplotlib/matplotlib_1.py b/tests/scipy-notebook/data/matplotlib/matplotlib_1.py new file mode 100644 index 0000000..8ccf369 --- /dev/null +++ b/tests/scipy-notebook/data/matplotlib/matplotlib_1.py @@ -0,0 +1,26 @@ +# Matplotlib: Create a simple plot example. +# Refs: https://matplotlib.org/stable/gallery/lines_bars_and_markers/simple_plot.html + +# Optional test with [Matplotlib Jupyter Integration](https://github.com/matplotlib/ipympl) +# %matplotlib widget +import matplotlib.pyplot as plt +import numpy as np + +# Data for plotting +t = np.arange(0.0, 2.0, 0.01) +s = 1 + np.sin(2 * np.pi * t) + +fig, ax = plt.subplots() +ax.plot(t, s) + +ax.set( + xlabel="time (s)", + ylabel="voltage (mV)", + title="About as simple as it gets, folks", +) +ax.grid() + +# Note that the test can be run headless by checking if an image is produced +file_path = "/tmp/test.png" +fig.savefig(file_path) +print(f"File {file_path} saved") diff --git a/tests/scipy-notebook/data/matplotlib/matplotlib_fonts_1.py b/tests/scipy-notebook/data/matplotlib/matplotlib_fonts_1.py new file mode 100644 index 0000000..8944f2b --- /dev/null +++ b/tests/scipy-notebook/data/matplotlib/matplotlib_fonts_1.py @@ -0,0 +1,25 @@ +# Matplotlib: Test tex fonts +import matplotlib +import matplotlib.pyplot as plt + +matplotlib.rcParams["pgf.texsystem"] = "pdflatex" +matplotlib.rcParams.update( + { + "font.family": "serif", + "font.size": 18, + "axes.labelsize": 20, + "axes.titlesize": 24, + "figure.titlesize": 28, + } +) +matplotlib.rcParams["text.usetex"] = True + +fig, ax = plt.subplots(1, 1) +x = [1, 2] +y = [1, 2] +ax.plot(x, y, label="a label") +ax.legend(fontsize=15) + +file_path = "/tmp/test_fonts.png" +fig.savefig(file_path) +print(f"File {file_path} saved") diff --git a/tests/scipy-notebook/test_cython.py b/tests/scipy-notebook/test_cython.py new file mode 100644 index 0000000..092271b --- /dev/null +++ b/tests/scipy-notebook/test_cython.py @@ -0,0 +1,25 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +from pathlib import Path + +from tests.conftest import TrackedContainer + +THIS_DIR = Path(__file__).parent.resolve() + + +def test_cython(container: TrackedContainer) -> None: + host_data_dir = THIS_DIR / "data/cython" + cont_data_dir = "/home/jovyan/data" + + logs = container.run_and_wait( + timeout=10, + volumes={str(host_data_dir): {"bind": cont_data_dir, "mode": "ro"}}, + tty=True, + command=[ + "bash", + "-c", + # We copy our data to a temporary folder to be able to modify the directory + f"cp -r {cont_data_dir}/ /tmp/test/ && cd /tmp/test && python3 setup.py build_ext", + ], + ) + assert "building 'helloworld' extension" in logs diff --git a/tests/scipy-notebook/test_extensions.py b/tests/scipy-notebook/test_extensions.py new file mode 100644 index 0000000..d90cc62 --- /dev/null +++ b/tests/scipy-notebook/test_extensions.py @@ -0,0 +1,34 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging + +import pytest # type: ignore + +from tests.conftest import TrackedContainer + +LOGGER = logging.getLogger(__name__) + + +@pytest.mark.skip(reason="Not yet compliant with JupyterLab 4") +@pytest.mark.parametrize( + "extension", + [ + "@bokeh/jupyter_bokeh", + "@jupyter-widgets/jupyterlab-manager", + "jupyter-matplotlib", + ], +) +def test_check_extension(container: TrackedContainer, extension: str) -> None: + """Basic check of each extension + + The list of installed extensions can be obtained through this command: + + $ jupyter labextension list + + """ + LOGGER.info(f"Checking the extension: {extension} ...") + container.run_and_wait( + timeout=10, + tty=True, + command=["jupyter", "labextension", "check", extension], + ) diff --git a/tests/scipy-notebook/test_matplotlib.py b/tests/scipy-notebook/test_matplotlib.py new file mode 100644 index 0000000..e96bc8c --- /dev/null +++ b/tests/scipy-notebook/test_matplotlib.py @@ -0,0 +1,55 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import logging +from pathlib import Path + +import pytest # type: ignore + +from tests.conftest import TrackedContainer + +LOGGER = logging.getLogger(__name__) +THIS_DIR = Path(__file__).parent.resolve() + + +@pytest.mark.parametrize( + "test_file,expected_file,description", + [ + ( + "matplotlib_1.py", + "test.png", + "Test that matplotlib can plot a graph and write it as an image ...", + ), + ( + "matplotlib_fonts_1.py", + "test_fonts.png", + "Test cm-super latex labels in matplotlib ...", + ), + ], +) +def test_matplotlib( + container: TrackedContainer, test_file: str, expected_file: str, description: str +) -> None: + """Various tests performed on matplotlib + + - Test that matplotlib is able to plot a graph and write it as an image + - Test matplotlib latex fonts, which depend on the cm-super package + """ + host_data_dir = THIS_DIR / "data/matplotlib" + cont_data_dir = "/home/jovyan/data" + output_dir = "/tmp" + LOGGER.info(description) + running_container = container.run_detached( + volumes={str(host_data_dir): {"bind": cont_data_dir, "mode": "ro"}}, + tty=True, + command=["bash", "-c", "sleep infinity"], + ) + command = f"python {cont_data_dir}/{test_file}" + cmd = running_container.exec_run(command) + LOGGER.debug(cmd.output.decode("utf-8")) + assert cmd.exit_code == 0, f"Command {command} failed" + # Checking if the file is generated + # https://stackoverflow.com/a/15895594/4413446 + command = f"test -s {output_dir}/{expected_file}" + cmd = running_container.exec_run(command) + LOGGER.debug(cmd.output.decode("utf-8")) + assert cmd.exit_code == 0, f"Command {command} failed" diff --git a/tests/scipy-notebook/units/unit_pandas.py b/tests/scipy-notebook/units/unit_pandas.py new file mode 100644 index 0000000..2190a0b --- /dev/null +++ b/tests/scipy-notebook/units/unit_pandas.py @@ -0,0 +1,7 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import numpy as np +import pandas as pd + +np.random.seed(0) +print(pd.Series(np.random.randint(0, 7, size=10)).sum()) diff --git a/tests/tensorflow-notebook/units/unit_tensorflow.py b/tests/tensorflow-notebook/units/unit_tensorflow.py new file mode 100644 index 0000000..96446a5 --- /dev/null +++ b/tests/tensorflow-notebook/units/unit_tensorflow.py @@ -0,0 +1,6 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. +import tensorflow as tf + +print(tf.constant("Hello, TensorFlow")) +print(tf.reduce_sum(tf.random.normal([1000, 1000]))) From b4188fd019338b372b567408341a8bea61397446 Mon Sep 17 00:00:00 2001 From: Idir Izitounene Date: Mon, 5 Feb 2024 11:12:05 +0100 Subject: [PATCH 02/11] First Build pipeline - PySpark version compatibility matrix --- .build/.versions.yml | 47 +++++ .github/.gitignore | 195 ++++++++++++++++++ .../install-patchs-and-extension/action.yml | 18 ++ .github/workflows/build-base.yml | 74 +++++++ .github/workflows/build-datascience.yml | 79 +++++++ .github/workflows/build-spark.yml | 84 ++++++++ .../docker-build-test-push-latest.yml | 113 ++++++++++ .github/workflows/docker-tag-push.yml | 63 ++++++ .github/workflows/main.yml | 183 ++++++++++++++++ .gitignore | 195 ++++++++++++++++++ README.md | 28 ++- python/.flake8 | 3 + python/requirements-extended.txt | 1 + python/src/extension/__init__.py | 0 python/src/extension/matrix/__init__.py | 0 python/src/extension/matrix/constants.py | 10 + python/src/extension/matrix/utils/__init__.py | 0 .../extension/matrix/utils/matrix_utils.py | 99 +++++++++ .../matrix/version_compatibility_matrix.py | 83 ++++++++ 19 files changed, 1273 insertions(+), 2 deletions(-) create mode 100644 .build/.versions.yml create mode 100644 .github/.gitignore create mode 100644 .github/actions/install-patchs-and-extension/action.yml create mode 100644 .github/workflows/build-base.yml create mode 100644 .github/workflows/build-datascience.yml create mode 100644 .github/workflows/build-spark.yml create mode 100644 .github/workflows/docker-build-test-push-latest.yml create mode 100644 .github/workflows/docker-tag-push.yml create mode 100644 .github/workflows/main.yml create mode 100644 .gitignore create mode 100644 python/.flake8 create mode 100644 python/requirements-extended.txt create mode 100644 python/src/extension/__init__.py create mode 100644 python/src/extension/matrix/__init__.py create mode 100644 python/src/extension/matrix/constants.py create mode 100644 python/src/extension/matrix/utils/__init__.py create mode 100644 python/src/extension/matrix/utils/matrix_utils.py create mode 100644 python/src/extension/matrix/version_compatibility_matrix.py diff --git a/.build/.versions.yml b/.build/.versions.yml new file mode 100644 index 0000000..b8d9345 --- /dev/null +++ b/.build/.versions.yml @@ -0,0 +1,47 @@ +################ Version Compatibility Matrix ###################### +##### SECTION USED TO GET COMPATIBLE VERSIONS ###################### +##### DONT PUT python_version IN AN ARRAY - JAVA COMPATIBILITY ##### +####### ENRICH WITH NEWER VERSIONS ################################# +compatibility-matrix: + # Maximum python version supported by spark-3.2.x: 3.9 + # Java support: 8/11 + - python_version: 3.9 + spark_version: [3.2.1, 3.2.2, 3.2.3, 3.2.4] + java_version: [11] + scala_version: [2.12, 2.13] + hadoop_version: 3.2 + spark_download_url: https://archive.apache.org/dist/spark/ + # Maximum python version supported by spark-3.3.x: 3.10 + # Java support: 8/11/17 + - python_version: '3.10' + spark_version: [3.3.1, 3.3.2, 3.3.3, 3.3.4] + java_version: [17] + scala_version: [2.12, 2.13] + hadoop_version: 3 + spark_download_url: https://archive.apache.org/dist/spark/ + # Maximum python version supported by spark-3.4.x: 3.11 + # Java support: 8/11/17 + - python_version: 3.11 + spark_version: [3.4.1, 3.4.2] + java_version: [17] + scala_version: [2.12, 2.13] + hadoop_version: 3 + spark_download_url: https://archive.apache.org/dist/spark/ + # https://spark.apache.org/releases/spark-release-3-5-0.html + # Minimum supported java version: 17/21 + - python_version: 3.11 + spark_version: [3.5.0] + java_version: [17] + scala_version: [2.12, 2.13] + hadoop_version: 3 + spark_download_url: https://archive.apache.org/dist/spark/ +### Ovveride the matrix above by providing the versions to build +### 1- The build-matrix is empty: build with all possible combintations +### 2- Override specific versions: build with all possible combinations which are compatible with that specific versions +### 3- The versions not present on compatibility-matrix are ignored +build-matrix: + python_version: ['3.9', '3.10', '3.11'] + spark_version: [3.2.4, 3.3.2, 3.3.4, 3.4.2, 3.5.0] + java_version: [11, 17] + scala_version: [2.12] + diff --git a/.github/.gitignore b/.github/.gitignore new file mode 100644 index 0000000..7df34e5 --- /dev/null +++ b/.github/.gitignore @@ -0,0 +1,195 @@ +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ +cover/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 +db.sqlite3-journal + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +.pybuilder/ +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +# For a library or package, you might want to ignore these files since the code is +# intended to run in multiple environments; otherwise, check them in: +# .python-version + +# pipenv +# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. +# However, in case of collaboration, if having platform-specific dependencies or dependencies +# having no cross-platform support, pipenv may install dependencies that don't work, or not +# install all needed dependencies. +#Pipfile.lock + +# poetry +# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. +# This is especially recommended for binary packages to ensure reproducibility, and is more +# commonly ignored for libraries. +# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control +#poetry.lock + +# pdm +# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control. +#pdm.lock +# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it +# in version control. +# https://pdm.fming.dev/#use-with-ide +.pdm.toml + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# pytype static type analyzer +.pytype/ + +# Cython debug symbols +cython_debug/ + +# PyCharm +# JetBrains specific template is maintained in a separate JetBrains.gitignore that can +# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore +# and can be added to the global gitignore or merged into this file. For a more nuclear +# option (not recommended) you can uncomment the following to ignore the entire idea folder. +#.idea/ + +################################################################## +# The content above is copied from # +# https://github.com/github/gitignore/blob/main/Python.gitignore # +# Please, add the content only below these lines # +################################################################## + +### IntelliJ IDEA ### +.idea +*.iml + +### Eclipse ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache +bin/ +!**/src/main/**/bin/ +!**/src/test/**/bin/ + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ + +### VS Code ### +.vscode/ + +### Mac OS ### +.DS_Store diff --git a/.github/actions/install-patchs-and-extension/action.yml b/.github/actions/install-patchs-and-extension/action.yml new file mode 100644 index 0000000..0e85853 --- /dev/null +++ b/.github/actions/install-patchs-and-extension/action.yml @@ -0,0 +1,18 @@ +name: Set up dev env requirements +description: Set up dev env requirements for build and tests + +runs: + using: composite + steps: + - name: Setup dev env requirement 📦 + run: | + cp -f requirements-dev.txt ../ + working-directory: ./docker-stacks + shell: bash + + - name: Copy patchs 📦 + run: | + cp -fr ../python/src/extension ./ + working-directory: ./docker-stacks + shell: bash + diff --git a/.github/workflows/build-base.yml b/.github/workflows/build-base.yml new file mode 100644 index 0000000..4c26f5c --- /dev/null +++ b/.github/workflows/build-base.yml @@ -0,0 +1,74 @@ +name: Build, test, and push jupyter base images + +on: + workflow_call: + inputs: + python_version: + description: Python version + required: true + type: string + python_dev_tag: + description: Tag to use for latest base images (foundation, minimal, etc) + required: true + type: string + runs-on: + description: GitHub Actions Runner image + required: true + type: string + secrets: + registry_username: + required: true + registry_token: + required: true + +defaults: + run: + working-directory: ./docker-stacks + +jobs: + + docker-stacks-foundation: + uses: ./.github/workflows/docker-build-test-push-latest.yml + with: + parent-image: "" + image: docker-stacks-foundation:${{ inputs.python_dev_tag }} + runs-on: ubuntu-latest + build-args: + PYTHON_VERSION=${{ inputs.python_version }} + secrets: + registry_username: ${{ secrets.registry_username }} + registry_token: ${{ secrets.registry_token }} + + base-notebook: + uses: ./.github/workflows/docker-build-test-push-latest.yml + with: + parent-image: docker-stacks-foundation:${{ inputs.python_dev_tag }} + image: base-notebook:${{ inputs.python_dev_tag }} + runs-on: ubuntu-latest + secrets: + registry_username: ${{ secrets.registry_username }} + registry_token: ${{ secrets.registry_token }} + needs: [docker-stacks-foundation] + + minimal-notebook: + uses: ./.github/workflows/docker-build-test-push-latest.yml + with: + parent-image: base-notebook:${{ inputs.python_dev_tag }} + image: minimal-notebook:${{ inputs.python_dev_tag }} + runs-on: ubuntu-latest + secrets: + registry_username: ${{ secrets.registry_username }} + registry_token: ${{ secrets.registry_token }} + needs: [base-notebook] + + scipy-notebook: + uses: ./.github/workflows/docker-build-test-push-latest.yml + with: + parent-image: minimal-notebook:${{ inputs.python_dev_tag }} + image: scipy-notebook:${{ inputs.python_dev_tag }} + runs-on: ubuntu-latest + secrets: + registry_username: ${{ secrets.registry_username }} + registry_token: ${{ secrets.registry_token }} + needs: [minimal-notebook] + diff --git a/.github/workflows/build-datascience.yml b/.github/workflows/build-datascience.yml new file mode 100644 index 0000000..adbeca9 --- /dev/null +++ b/.github/workflows/build-datascience.yml @@ -0,0 +1,79 @@ +name: Build, test, and push jupyter datascience images + +on: + workflow_call: + inputs: + python_dev_tag: + description: Tag to use for latest base images (foundation, minimal, etc) + required: true + type: string + runs-on: + description: GitHub Actions Runner image + required: true + type: string + secrets: + registry_username: + required: true + registry_token: + required: true + +defaults: + run: + working-directory: ./docker-stacks + +jobs: + r: + uses: ./.github/workflows/docker-build-test-push-latest.yml + with: + parent-image: minimal-notebook:${{ inputs.python_dev_tag }} + image: r-notebook:${{ inputs.python_dev_tag }} + runs-on: ${{ inputs.runs-on }} + secrets: + registry_username: ${{ secrets.registry_username }} + registry_token: ${{ secrets.registry_token }} + + datascience: + uses: ./.github/workflows/docker-build-test-push-latest.yml + with: + parent-image: scipy-notebook:${{ inputs.python_dev_tag }} + image: datascience-notebook:${{ inputs.python_dev_tag }} + runs-on: ${{ inputs.runs-on }} + secrets: + registry_username: ${{ secrets.registry_username }} + registry_token: ${{ secrets.registry_token }} + + # julia: + # uses: ./.github/workflows/docker-build-test-push-latest.yml + # with: + # parent-image: minimal-notebook:${{ inputs.python_dev_tag }} + # image: julia-notebook + # runs-on: ${{ inputs.runs-on }} + # secrets: + # registry_username: ${{ secrets.registry_username }} + # registry_token: ${{ secrets.registry_token }} + + # tensorflow: + # uses: ./.github/workflows/docker-build-test-push-latest.yml + # with: + # parent-image: scipy-notebook:${{ inputs.python_dev_tag }} + # image: tensorflow-notebook + # runs-on: ${{ inputs.runs-on }} + # secrets: + # registry_username: ${{ secrets.registry_username }} + # registry_token: ${{ secrets.registry_token }} + + # pytorch: + # uses: ./.github/workflows/docker-build-test-push-latest.yml + # with: + # parent-image: scipy-notebook:${{ inputs.python_dev_tag }} + # image: pytorch-notebook + # runs-on: ${{ inputs.runs-on }} + # secrets: + # registry_username: ${{ secrets.registry_username }} + # registry_token: ${{ secrets.registry_token }} + + + + + + diff --git a/.github/workflows/build-spark.yml b/.github/workflows/build-spark.yml new file mode 100644 index 0000000..a140521 --- /dev/null +++ b/.github/workflows/build-spark.yml @@ -0,0 +1,84 @@ +name: Build, test, and push jupyter Spark images + +on: + workflow_call: + inputs: + python_version: + description: Python version + required: true + type: string + spark_download_url: + description: Spark dist download url + required: true + type: string + spark_version: + description: Spark version + required: true + type: string + java_version: + description: Java version + required: true + type: string + scala_version: + description: Scala version + required: true + type: string + hadoop_version: + description: Hadoop version + required: true + type: string + python_dev_tag: + description: Tag to use for latest base images (foundation, minimal, etc) + required: true + type: string + spark_dev_tag: + description: Tag to use for latest pyspark images (pyspark, all-spark, etc) + required: true + type: string + registry: + description: The list of tags space separated values + required: false + type: string + default: "ghcr.io" + runs-on: + description: GitHub Actions Runner image + required: true + type: string + secrets: + registry_username: + required: true + registry_token: + required: true + +defaults: + run: + working-directory: ./docker-stacks + +jobs: + pyspark: + uses: ./.github/workflows/docker-build-test-push-latest.yml + with: + parent-image: scipy-notebook:${{ inputs.python_dev_tag }} + image: pyspark-notebook:${{ inputs.spark_dev_tag }} + runs-on: ${{ inputs.runs-on }} + build-args: + spark_download_url=${{ inputs.spark_download_url }} + spark_version=${{ inputs.spark_version }} + openjdk_version=${{ inputs.java_version }} + scala_version=${{ inputs.scala_version }} + hadoop_version=${{ inputs.hadoop_version }} + secrets: + registry_username: ${{ secrets.registry_username }} + registry_token: ${{ secrets.registry_token }} + + all-spark: + uses: ./.github/workflows/docker-build-test-push-latest.yml + with: + parent-image: pyspark-notebook:${{ inputs.spark_dev_tag }} + image: all-spark-notebook:${{ inputs.spark_dev_tag }} + runs-on: ${{ inputs.runs-on }} + secrets: + registry_username: ${{ secrets.registry_username }} + registry_token: ${{ secrets.registry_token }} + needs: [pyspark] + diff --git a/.github/workflows/docker-build-test-push-latest.yml b/.github/workflows/docker-build-test-push-latest.yml new file mode 100644 index 0000000..2c2c305 --- /dev/null +++ b/.github/workflows/docker-build-test-push-latest.yml @@ -0,0 +1,113 @@ +name: Build, test and tag the image as --latest; then push to the container registry + +on: + workflow_call: + inputs: + parent-image: + description: Parent image name + required: true + type: string + image: + description: Image name + required: true + type: string + registry: + description: The list of tags space separated values + required: false + type: string + default: "ghcr.io" + build-args: + description: Build args comma separated list, ex. PYTHON_VERSION=3.11, ... + required: false + type: string + runs-on: + description: GitHub Actions Runner image + required: true + type: string + secrets: + registry_username: + required: true + registry_token: + required: true + +defaults: + run: + working-directory: ./docker-stacks +jobs: + build-test-upload: + name: ${{ inputs.image }} + runs-on: ${{ inputs.runs-on }} + + steps: + - name: Checkout Repo ⚡️ + uses: actions/checkout@v4 + + - name: Setup dev env patchs 📦 + uses: ./.github/actions/install-patchs-and-extension + + - name: Create dev environment 📦 + uses: ./docker-stacks/.github/actions/create-dev-env + + - name: Expose git commit sha as env variable + uses: rlespinasse/git-commit-data-action@v1.5.0 + + - name: Login to Registry 🔐 + uses: docker/login-action@v3 + with: + registry: ${{ inputs.registry }} + username: ${{ secrets.registry_username }} + password: ${{ secrets.registry_token }} + + - name: Pull parent image 📥 + if: inputs.parent-image != '' + run: docker pull ${{ inputs.registry }}/${{ github.repository_owner }}/${{ inputs.parent-image }} + shell: bash + - name: Prepare image build (build args) 📦 + run: | + for build_arg in ${{ inputs.build-args }} + do + BUILD_ARGS+="--build-arg $build_arg " + done + if [[ "${{ inputs.parent-image }}" ]] + then + BUILD_ARGS+="--build-arg BASE_CONTAINER=${{ inputs.registry }}/${{ github.repository_owner }}/${{ inputs.parent-image }} " + fi + echo "BUILD_ARGS=$BUILD_ARGS" >> $GITHUB_ENV + # The short image name is necessary to run the tests (not pushed, local to jobs only) + echo "SHORT_IMAGE_NAME=${{ inputs.image }}" | awk -F: '{print $1}' >> $GITHUB_ENV + shell: bash + + - name: Patch PySpark Dockerfile to be compatible with java +11 📦 + if: contains(inputs.image, 'pyspark-notebook:') && contains(inputs.build-args, 'spark_version=3.2.') && ! contains(inputs.build-args, 'openjdk_version=8') + run: | + cat ../images/patch/pyspark-notebook/Dockerfile.spark3.2.x >> images/$SHORT_IMAGE_NAME/Dockerfile + shell: bash + + - name: Build image 🛠 + run: | + #docker buildx build --platform=linux/amd64 --rm --force-rm --tag ... + docker build --rm --force-rm --tag ${{ inputs.registry }}/${{ github.repository_owner }}/${{ inputs.image }} \ + --tag ${{ inputs.registry }}/${{ github.repository_owner }}/$SHORT_IMAGE_NAME:latest images/$SHORT_IMAGE_NAME/ \ + --build-arg REGISTRY=${{ inputs.registry }} \ + --build-arg OWNER=${{ github.repository_owner }} $BUILD_ARGS \ + --label "org.opencontainers.image.source=https://github.com/${{ github.repository }}" \ + --label "org.opencontainers.image.description=$SHORT_IMAGE_NAME" + env: + DOCKER_BUILDKIT: 1 + # Full logs for CI build + BUILDKIT_PROGRESS: plain + shell: bash + + - name: Run tests ✅ + # Skip tests when running with ACT + if: env.ACT_SKIP_TESTS == '' + run: | + python3 -m tests.run_tests --short-image-name $SHORT_IMAGE_NAME --registry ${{ inputs.registry }} --owner ${{ github.repository_owner }} + shell: bash + + - name: Push latest tag image to registry 📤 + run: docker push ${{ inputs.registry }}/${{ github.repository_owner }}/${{ inputs.image }} + shell: bash + + + \ No newline at end of file diff --git a/.github/workflows/docker-tag-push.yml b/.github/workflows/docker-tag-push.yml new file mode 100644 index 0000000..84a1e95 --- /dev/null +++ b/.github/workflows/docker-tag-push.yml @@ -0,0 +1,63 @@ +name: Pull the image with it's latest tag, apply new tags and push back to container registry + +on: + workflow_call: + inputs: + image: + description: Image name + required: true + type: string + registry: + description: The list of tags space separated values + required: false + type: string + default: "ghcr.io" + runs-on: + description: GitHub Actions Runner image + required: true + type: string + secrets: + registry_username: + required: true + registry_token: + required: true + +defaults: + run: + working-directory: ./docker-stacks + +jobs: + tag-push: + runs-on: ${{ inputs.runs-on }} + name: ${{ inputs.image }} + + steps: + - name: Checkout Repo ⚡️ + uses: actions/checkout@v4 + + - name: Setup dev env patchs 📦 + uses: ./.github/actions/install-patchs-and-extension + + - name: Create dev environment 📦 + uses: ./docker-stacks/.github/actions/create-dev-env + + - name: Login to Registry 🔐 + uses: docker/login-action@v3 + with: + registry: ${{ inputs.registry }} + username: ${{ secrets.registry_username }} + password: ${{ secrets.registry_token }} + + - name: Pull latest tag image 📥 + run: docker pull ${{ inputs.registry }}/${{ github.repository_owner }}/${{ inputs.image }} + shell: bash + + - name: Prepare image push 📦 + run: | + # The short image name (without tag) is necessary to push to the registry + echo "SHORT_IMAGE_NAME=${{ inputs.image }}" | awk -F: '{print $1}' >> $GITHUB_ENV + shell: bash + + - name: Push Images to Registry 📤 + run: docker push --all-tags ${{ inputs.registry }}/${{ github.repository_owner }}/$SHORT_IMAGE_NAME + shell: bash diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..ae12d3a --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,183 @@ +name: Build, test, and push jupyter images + +on: + pull_request: + paths: + - ".github/workflows/main.yml" + - ".github/workflows/build-base.yml" + - ".github/workflows/build-datascience.yml" + - ".github/workflows/build-spark.yml" + - ".github/workflows/docker-build-test-push-latest.yml" + - ".github/workflows/docker-tag-push.yml" + - ".github/actions/generate-build-matrix/action.yml" + - ".github/actions/install-patchs-and-extension/action.yml" + + - ".build/.versions.yml" + + - "python/src/extension/**" + - "docker-stacks/**" + + push: + branches: + - main + paths: + - ".github/workflows/main.yml" + - ".github/workflows/build-base.yml" + - ".github/workflows/build-datascience.yml" + - ".github/workflows/build-spark.yml" + - ".github/workflows/docker-build-test-push-latest.yml" + - ".github/workflows/docker-tag-push.yml" + - ".github/actions/generate-build-matrix/action.yml" + - ".github/actions/install-patchs-and-extension/action.yml" + + - ".build/.versions.yml" + + - "python/src/extension/**" + - "docker-stacks/**" + + workflow_dispatch: + +# https://docs.github.com/en/actions/using-jobs/using-concurrency +concurrency: + # Only cancel in-progress jobs or runs for the current workflow - matches against branch & tags + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + build-version-compatibility-matrix: + runs-on: ubuntu-latest + outputs: + spark: ${{ steps.set-matrix.outputs.spark }} + python: ${{ steps.set-matrix.outputs.python }} + steps: + - name: Checkout Repo ⚡️ + uses: actions/checkout@v4 + + - name: Setup dev env patchs 📦 + uses: ./.github/actions/install-patchs-and-extension + + - name: Create dev environment 📦 + uses: ./docker-stacks/.github/actions/create-dev-env + + - name: Get current branch 📦 + id: branch + uses: tj-actions/branch-names@v8 + + - name: Build version compatibility matrix 🛠 + id: set-matrix + run: | + python python/src/extension/matrix/version_compatibility_matrix.py \ + --versions-matrix-path .build/.versions.yml \ + --git-branch ${{ steps.branch.outputs.current_branch || steps.branch.outputs.tag}} >> $GITHUB_OUTPUT + cat $GITHUB_OUTPUT + shell: bash + + build-base: + name: build-base (python-${{ matrix.python.python_version }}) + strategy: + # 3 Jobs in //, the base jobs run in sequential + max-parallel: 3 + matrix: + python: ${{ fromJson(needs.build-version-compatibility-matrix.outputs.python) }} + uses: ./.github/workflows/build-base.yml + with: + python_version: ${{ matrix.python.python_version }} + python_dev_tag: ${{ matrix.python.python_dev_tag }} + runs-on: ubuntu-latest + secrets: + registry_username: ${{ secrets.REGISTRY_USERNAME }} + registry_token: ${{ secrets.REGISTRY_ROBOT_TOKEN }} + needs: [build-version-compatibility-matrix] + + build-datascience: + name: build-datascience (python-${{ matrix.python.python_version }}) + strategy: + # 1 matrix call = +2 jobs in // (check the number here build-datascience.yml) + max-parallel: 1 + matrix: + python: ${{ fromJson(needs.build-version-compatibility-matrix.outputs.python) }} + uses: ./.github/workflows/build-datascience.yml + with: + python_dev_tag: ${{ matrix.python.python_dev_tag }} + runs-on: ubuntu-latest + secrets: + registry_username: ${{ secrets.REGISTRY_USERNAME }} + registry_token: ${{ secrets.REGISTRY_ROBOT_TOKEN }} + needs: [build-version-compatibility-matrix, build-base] + + build-spark: + name: build-spark (python-${{ matrix.spark.python_version }}) + strategy: + # 2 jobs in // + max-parallel: 2 + matrix: + spark: ${{ fromJson(needs.build-version-compatibility-matrix.outputs.spark) }} + uses: ./.github/workflows/build-spark.yml + with: + spark_download_url: ${{ matrix.spark.spark_download_url }} + python_version: ${{ matrix.spark.python_version }} + spark_version: ${{ matrix.spark.spark_version }} + java_version: ${{ matrix.spark.java_version }} + scala_version: ${{ matrix.spark.scala_version }} + hadoop_version: ${{ matrix.spark.hadoop_version }} + python_dev_tag: ${{ matrix.spark.python_dev_tag }} + spark_dev_tag: ${{ matrix.spark.spark_dev_tag }} + runs-on: ubuntu-latest + secrets: + registry_username: ${{ secrets.REGISTRY_USERNAME }} + registry_token: ${{ secrets.REGISTRY_ROBOT_TOKEN }} + needs: [build-version-compatibility-matrix, build-base] + + ### 3 push in // + push-base: + if: github.ref == 'refs/heads/main' + name: push-base (python-${{ matrix.python.python_version }}) + strategy: + max-parallel: 1 + matrix: + image: [ docker-stacks-foundation, base-notebook, minimal-notebook, scipy-notebook,] + python: ${{ fromJson(needs.build-version-compatibility-matrix.outputs.python) }} + uses: ./.github/workflows/docker-tag-push.yml + with: + image: "${{ matrix.image }}:${{ matrix.python.python_dev_tag }}" + runs-on: ubuntu-latest + secrets: + registry_username: ${{ secrets.REGISTRY_USERNAME }} + registry_token: ${{ secrets.REGISTRY_ROBOT_TOKEN }} + needs: [build-version-compatibility-matrix, build-datascience, build-spark,] + + push-datascience: + if: github.ref == 'refs/heads/main' + name: push-datascience (python-${{ matrix.python.python_version }}) + strategy: + max-parallel: 1 + matrix: + image: [r-notebook, datascience-notebook, ] + python: ${{ fromJson(needs.build-version-compatibility-matrix.outputs.python) }} + uses: ./.github/workflows/docker-tag-push.yml + with: + image: "${{ matrix.image }}:${{ matrix.python.python_dev_tag }}" + runs-on: ubuntu-latest + secrets: + registry_username: ${{ secrets.REGISTRY_USERNAME }} + registry_token: ${{ secrets.REGISTRY_ROBOT_TOKEN }} + needs: [build-version-compatibility-matrix, build-datascience, build-spark] + + push-spark: + if: github.ref == 'refs/heads/main' + strategy: + max-parallel: 1 + matrix: + image: [ pyspark-notebook, all-spark-notebook,] + spark: ${{ fromJson(needs.build-version-compatibility-matrix.outputs.spark) }} + uses: ./.github/workflows/docker-tag-push.yml + with: + image: "${{ matrix.image }}:${{ matrix.spark.spark_dev_tag }}" + runs-on: ubuntu-latest + secrets: + registry_username: ${{ secrets.REGISTRY_USERNAME }} + registry_token: ${{ secrets.REGISTRY_ROBOT_TOKEN }} + needs: [build-version-compatibility-matrix, build-datascience, build-spark] + + + \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7df34e5 --- /dev/null +++ b/.gitignore @@ -0,0 +1,195 @@ +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ +cover/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 +db.sqlite3-journal + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +.pybuilder/ +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +# For a library or package, you might want to ignore these files since the code is +# intended to run in multiple environments; otherwise, check them in: +# .python-version + +# pipenv +# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. +# However, in case of collaboration, if having platform-specific dependencies or dependencies +# having no cross-platform support, pipenv may install dependencies that don't work, or not +# install all needed dependencies. +#Pipfile.lock + +# poetry +# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. +# This is especially recommended for binary packages to ensure reproducibility, and is more +# commonly ignored for libraries. +# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control +#poetry.lock + +# pdm +# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control. +#pdm.lock +# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it +# in version control. +# https://pdm.fming.dev/#use-with-ide +.pdm.toml + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# pytype static type analyzer +.pytype/ + +# Cython debug symbols +cython_debug/ + +# PyCharm +# JetBrains specific template is maintained in a separate JetBrains.gitignore that can +# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore +# and can be added to the global gitignore or merged into this file. For a more nuclear +# option (not recommended) you can uncomment the following to ignore the entire idea folder. +#.idea/ + +################################################################## +# The content above is copied from # +# https://github.com/github/gitignore/blob/main/Python.gitignore # +# Please, add the content only below these lines # +################################################################## + +### IntelliJ IDEA ### +.idea +*.iml + +### Eclipse ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache +bin/ +!**/src/main/**/bin/ +!**/src/test/**/bin/ + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ + +### VS Code ### +.vscode/ + +### Mac OS ### +.DS_Store diff --git a/README.md b/README.md index 87c5ac3..9649b72 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,26 @@ -# jupyterlab-docker -okdp jupyterlab docker images +# kdp-docker-stacks + +kdp jupyter images based on https://github.com/jupyter/docker-stacks + + +# Extension + + +# Initial setup + +```shell +git remote add docker-stacks https://github.com/jupyter/docker-stacks.git +git subtree add --prefix=docker-stacks --squash docker-stacks main +``` + +```shell +act --container-architecture linux/amd64 \ + -W .github/workflows/docker.yml \ + --artifact-server-path /tmp/act/artifacts \ + --env ACT_SKIP_TESTS= \ + --env PUSH_TO_REGISTRY=true \ + --env REGISTRY=ghcr.io \ + --secret REGISTRY_USERNAME= \ + --secret REGISTRY_ROBOT_TOKEN= + --rm +``` \ No newline at end of file diff --git a/python/.flake8 b/python/.flake8 new file mode 100644 index 0000000..87afe54 --- /dev/null +++ b/python/.flake8 @@ -0,0 +1,3 @@ +[flake8] +max-line-length = 100 +extend-ignore = E203, W503 diff --git a/python/requirements-extended.txt b/python/requirements-extended.txt new file mode 100644 index 0000000..c3726e8 --- /dev/null +++ b/python/requirements-extended.txt @@ -0,0 +1 @@ +pyyaml diff --git a/python/src/extension/__init__.py b/python/src/extension/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/python/src/extension/matrix/__init__.py b/python/src/extension/matrix/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/python/src/extension/matrix/constants.py b/python/src/extension/matrix/constants.py new file mode 100644 index 0000000..9c65e73 --- /dev/null +++ b/python/src/extension/matrix/constants.py @@ -0,0 +1,10 @@ +PYTHON_VERSION = "python_version" +SPARK_VERSION = "spark_version" +JAVA_VERSION = "java_version" +SCALA_VERSION = "scala_version" +HADOOP_VERSION = "hadoop_version" +SPARK_DOWNLOAD_URL = "spark_download_url" + +SPARK_DEV_TAG = "spark_dev_tag" +PYTHON_DEV_TAG = "python_dev_tag" + diff --git a/python/src/extension/matrix/utils/__init__.py b/python/src/extension/matrix/utils/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/python/src/extension/matrix/utils/matrix_utils.py b/python/src/extension/matrix/utils/matrix_utils.py new file mode 100644 index 0000000..262f85c --- /dev/null +++ b/python/src/extension/matrix/utils/matrix_utils.py @@ -0,0 +1,99 @@ +from itertools import groupby +import itertools +from constants import * + +def merge_on(elem) -> str: + return str(elem[PYTHON_VERSION]) + "_".join(str(elem[JAVA_VERSION])) + str(elem[HADOOP_VERSION]) + +def intersect_dicts(dict1: dict, dict2: dict) -> dict: + """ Intersection between values of two dicts + if dict2 is empty, return dict1 + """ + dict_res = {**dict1, **dict2} + ### technical key for tag to build spark images without rebuilding bases images + #for key in dict1.keys(): + # if key == PYTHON_VERSION: + # dict_res[f"_{PYTHON_VERSION}"] = dict1.get(key) + ### Do the intersection + for key, value in dict_res.items(): + if key in dict1 and key in dict2: + dict_res[key] = list(set(value) & set(dict1[key])) + return dict_res + +def merge_dicts(dict1: dict, *args: dict) -> dict: + """ Merge multiple dicts by keeping all the values for the keys """ + if not args: + return dict1 + dict2 = args[0] + dict_res = {**dict1, **dict2} + for key, value in dict_res.items(): + if key in dict1 and key in dict2: + dict_res[key] = list(set(sum([value , dict1[key]], []))) + return dict_res if len(args) == 1 else merge_dicts(dict_res, *args[1:]) + +def intersect_versions(groups: list[dict], on_dict: dict) -> list[dict]: + """ Intersect groups of dicts values with the provided on_dict """ + ### Intersect the groups with on_dict + result = [] + for group in groups: + result.append(intersect_dicts(group, on_dict)) + + return result + +def merge_versions(dicts: list[dict]) -> list[dict]: + """ Merge list of dicts by keeping all the values for the keys, + Then group the elements by python_version key + """ + ### Group the elements by python_version + python_groups = [] + data = sorted(dicts, key=merge_on) + for k, g in groupby(data, merge_on): + python_groups.append(list(g)) + + ### Merge the groups + result = [] + for group in python_groups: + result.extend(group) + return result + +def filter_versions (dicts: list[dict]) -> list[dict]: + return list(filter(lambda elem: + elem.get(SPARK_VERSION) and + elem.get(JAVA_VERSION) and + elem.get(SCALA_VERSION) and + elem.get(HADOOP_VERSION) and elem.get(SPARK_DOWNLOAD_URL), + dicts)) + +def normalize_matrix(versions: list[dict]) -> list[dict]: + """" Convert to an array matrix + https://github.com/orgs/community/discussions/24981 + """ + + combinations = [] + for version in versions: + keys, values = zip(*version.items()) + combinations.extend([dict(zip(keys, v)) for v in itertools.product(*values)]) + + return combinations + +def normalize_scala_version(matrix: list[dict]) -> list[dict]: + """" dist is prefixed with -scala2.13 for scala version 2.13 + Ex.: https://archive.apache.org/dist/spark/spark-3.4.0/ + """ + result = [] + n = lambda key,value: (key, value) if key != SCALA_VERSION else (key, value if value == "2.13" else "") + return [dict(map(lambda kv: n(kv[0], kv[1]), e.items())) for e in matrix] + +def normalize_value (value: str) -> [str]: + """ Cast values to string and convert simple values to list for github strategy matrix input """ + if not type(value) == list: + return [str(value)] + return [str(v) for v in value] + +def remove_duplicates (dicts: list[dict]) -> list[dict]: + result = [] + for dict in dicts: + if dict not in result: + result.append(dict) + return result + diff --git a/python/src/extension/matrix/version_compatibility_matrix.py b/python/src/extension/matrix/version_compatibility_matrix.py new file mode 100644 index 0000000..86adb9e --- /dev/null +++ b/python/src/extension/matrix/version_compatibility_matrix.py @@ -0,0 +1,83 @@ +import json +import yaml +import argparse +import logging +from constants import * + +from utils.matrix_utils import filter_versions, intersect_versions, merge_versions, normalize_matrix, normalize_scala_version, normalize_value, remove_duplicates + +LOGGER = logging.getLogger(__name__) + +class VersionCompatibilityMatrix: + + def __init__(self, path: str, git_branch: str): + + LOGGER.info(f"Building version compatibilty matrix - Matrix path: {path}, Current git branch: {git_branch}") + + with open(path, 'r') as file: + doc = yaml.safe_load(file) + self.compatibility_matrix = doc.get("compatibility-matrix") + self.build_matrix = doc.get("build-matrix") + self.build_matrix = self.build_matrix if self.build_matrix else {} + # Handle branches like: feature/my-feature + self.git_branch = git_branch.replace("/", "-") + + self.__validate__() + self.compatibility_matrix = [dict(map(lambda kv: (kv[0], normalize_value(kv[1])), e.items())) for e in self.compatibility_matrix] + self.build_matrix = dict(map(lambda kv: (kv[0], normalize_value(kv[1])), self.build_matrix.items())) + + def __validate__(self): + if not self.compatibility_matrix: + raise ValueError(f"The compatibility-matrix section is mandatory") + + def generate_matrix(self) -> (str, dict): + + compatibility_versions_matrix = [dict(map(lambda kv: (kv[0], normalize_value(kv[1])), e.items())) for e in self.compatibility_matrix] + spark_version_matrix = normalize_matrix(filter_versions(intersect_versions(merge_versions(compatibility_versions_matrix), self.build_matrix))) + spark_version_matrix = normalize_scala_version(self.add_latest_dev_tags(spark_version_matrix)) + python_version_matrix = remove_duplicates([{PYTHON_VERSION: e.get(PYTHON_VERSION), PYTHON_DEV_TAG: e.get(PYTHON_DEV_TAG)} for e in spark_version_matrix ]) + return (spark_version_matrix, python_version_matrix) + + def add_latest_dev_tags(self, matrix: list[dict]) -> list[dict]: + """ The intermediate images are pushed with a latest uniq dev tag """ + for e in matrix: + e |= {f"{SPARK_DEV_TAG}": self.spark_dev_tag(e)} + e |= {f"{PYTHON_DEV_TAG}": self.python_dev_tag(e.get(PYTHON_VERSION))} + return matrix + + def python_dev_tag (self, python_version: str) -> str: + return f"python{python_version}-{self.git_branch}-latest" + + def spark_dev_tag(self, e: dict) -> str: + python_version = e.get(PYTHON_VERSION) + spark_version = e.get(SPARK_VERSION) + java_version = e.get(JAVA_VERSION) + scala_version = e.get(SCALA_VERSION) + scala_version = "2.12" if not scala_version else scala_version + return f"spark{spark_version}-python{python_version}-java{java_version}-scala{scala_version}-{self.git_branch}-latest" + +if __name__ == "__main__": + + logging.basicConfig(level=logging.INFO) + arg_parser = argparse.ArgumentParser() + arg_parser.add_argument( + "--versions-matrix-path", + required=True, + help="The matrix path location containing the versions to build", + ) + + arg_parser.add_argument( + "--git-branch", + required=True, + help="The current git branch", + ) + + args = arg_parser.parse_args() + bm = VersionCompatibilityMatrix(args.versions_matrix_path, args.git_branch) + #bm = VersionCompatibilityMatrix(".build/.versions.yml", "main") + #with open(os.environ['GITHUB_OUTPUT'], 'a') as fh: + # print(f"spark_matrix={json.dumps(bm.generate_matrix())}", file=fh) + (spark_matrix, python_version) = bm.generate_matrix() + assert spark_matrix, ("The resulting build matrix was empty. Please, review your configuration '.build/.versions.yml'") + print(f"spark={json.dumps(spark_matrix)}") + print(f"python={json.dumps(python_version)}") From f4396aae0284a2a91f6589829307f5def88d0678 Mon Sep 17 00:00:00 2001 From: Idir Izitounene Date: Mon, 5 Feb 2024 11:23:24 +0100 Subject: [PATCH 03/11] Tests - Add ghcr.io registry and skip test of python version --- .../install-patchs-and-extension/action.yml | 1 + .../docker-build-test-push-latest.yml | 6 -- python/src/patch/README.md | 10 +++ .../test_python_version.py | 41 ++++++++++++ python/src/patch/tests/run_tests.py | 64 +++++++++++++++++++ 5 files changed, 116 insertions(+), 6 deletions(-) create mode 100644 python/src/patch/README.md create mode 100644 python/src/patch/tests/docker-stacks-foundation/test_python_version.py create mode 100755 python/src/patch/tests/run_tests.py diff --git a/.github/actions/install-patchs-and-extension/action.yml b/.github/actions/install-patchs-and-extension/action.yml index 0e85853..0785a97 100644 --- a/.github/actions/install-patchs-and-extension/action.yml +++ b/.github/actions/install-patchs-and-extension/action.yml @@ -12,6 +12,7 @@ runs: - name: Copy patchs 📦 run: | + cp -fr ../python/src/patch/* ./ cp -fr ../python/src/extension ./ working-directory: ./docker-stacks shell: bash diff --git a/.github/workflows/docker-build-test-push-latest.yml b/.github/workflows/docker-build-test-push-latest.yml index 2c2c305..87d3e15 100644 --- a/.github/workflows/docker-build-test-push-latest.yml +++ b/.github/workflows/docker-build-test-push-latest.yml @@ -77,12 +77,6 @@ jobs: echo "SHORT_IMAGE_NAME=${{ inputs.image }}" | awk -F: '{print $1}' >> $GITHUB_ENV shell: bash - - name: Patch PySpark Dockerfile to be compatible with java +11 📦 - if: contains(inputs.image, 'pyspark-notebook:') && contains(inputs.build-args, 'spark_version=3.2.') && ! contains(inputs.build-args, 'openjdk_version=8') - run: | - cat ../images/patch/pyspark-notebook/Dockerfile.spark3.2.x >> images/$SHORT_IMAGE_NAME/Dockerfile - shell: bash - - name: Build image 🛠 run: | #docker buildx build --platform=linux/amd64 --rm --force-rm --tag ... diff --git a/python/src/patch/README.md b/python/src/patch/README.md new file mode 100644 index 0000000..e3b4663 --- /dev/null +++ b/python/src/patch/README.md @@ -0,0 +1,10 @@ +# Patchs + +The directory contains a list of a patched original python sourcen files in order to run the tests: + +## Add ghcr.io container registry +* [run_tests.py](tests/run_tests.py#L53) + +## Skip python version check +* [Skip python version](tests/docker-stacks-foundation/test_python_version.py#L17): Ability to run with any python version provided by the build-arg: PYTHON_VERSION + diff --git a/python/src/patch/tests/docker-stacks-foundation/test_python_version.py b/python/src/patch/tests/docker-stacks-foundation/test_python_version.py new file mode 100644 index 0000000..7a84e45 --- /dev/null +++ b/python/src/patch/tests/docker-stacks-foundation/test_python_version.py @@ -0,0 +1,41 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +""" +Skip the hard check of python version to allow it's override at a build time: +--build-arg PYTHON_VERSION=3.x.x +""" + +import logging +import pytest # type: ignore + +from tests.conftest import TrackedContainer + +LOGGER = logging.getLogger(__name__) +EXPECTED_PYTHON_VERSION = "3.11" + +@pytest.mark.skip(reason="Allow override python version") +def test_python_version(container: TrackedContainer) -> None: + LOGGER.info( + f"Checking that python major.minor version is {EXPECTED_PYTHON_VERSION}" + ) + logs = container.run_and_wait( + timeout=5, + tty=True, + command=["python", "--version"], + ) + python = next(line for line in logs.splitlines() if line.startswith("Python ")) + full_version = python.split()[1] + major_minor_version = full_version[: full_version.rfind(".")] + + assert major_minor_version == EXPECTED_PYTHON_VERSION + +@pytest.mark.skip(reason="Allow override python version") +def test_python_pinned_version(container: TrackedContainer) -> None: + LOGGER.info(f"Checking that pinned python version is {EXPECTED_PYTHON_VERSION}.*") + logs = container.run_and_wait( + timeout=5, + tty=True, + command=["cat", "/opt/conda/conda-meta/pinned"], + ) + assert f"python {EXPECTED_PYTHON_VERSION}.*" in logs diff --git a/python/src/patch/tests/run_tests.py b/python/src/patch/tests/run_tests.py new file mode 100755 index 0000000..47f3d0d --- /dev/null +++ b/python/src/patch/tests/run_tests.py @@ -0,0 +1,64 @@ +#!/usr/bin/env python3 +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +""" +Add ghcr.io as part of allowed registries to prevent test failure +""" + +import argparse +import logging + +import plumbum + +from tests.images_hierarchy import get_test_dirs + +python3 = plumbum.local["python3"] + +LOGGER = logging.getLogger(__name__) + + +def test_image(short_image_name: str, registry: str, owner: str) -> None: + LOGGER.info(f"Testing image: {short_image_name}") + test_dirs = get_test_dirs(short_image_name) + LOGGER.info(f"Test dirs to be run: {test_dirs}") + with plumbum.local.env(TEST_IMAGE=f"{registry}/{owner}/{short_image_name}"): + ( + python3[ + "-m", + "pytest", + "--numprocesses", + "auto", + "-m", + "not info", + test_dirs, + ] + & plumbum.FG + ) + + +if __name__ == "__main__": + logging.basicConfig(level=logging.INFO) + + arg_parser = argparse.ArgumentParser() + arg_parser.add_argument( + "--short-image-name", + required=True, + help="Short image name", + ) + arg_parser.add_argument( + "--registry", + required=True, + type=str, + choices=["docker.io", "quay.io", "ghcr.io"], + help="Image registry", + ) + arg_parser.add_argument( + "--owner", + required=True, + help="Owner of the image", + ) + + args = arg_parser.parse_args() + + test_image(args.short_image_name, args.registry, args.owner) From ee01b4e7030dff71ad1be5028e3d4753d9848f66 Mon Sep 17 00:00:00 2001 From: Idir Izitounene Date: Mon, 5 Feb 2024 13:09:37 +0100 Subject: [PATCH 04/11] spark 3.2.x - Add 'add-opens' options for java 11 compatibility --- .../docker-build-test-push-latest.yml | 6 ++++++ images/README.md | 13 ++++++++++++ .../pyspark-notebook/Dockerfile.spark3.2.x | 21 +++++++++++++++++++ 3 files changed, 40 insertions(+) create mode 100644 images/README.md create mode 100644 images/patch/pyspark-notebook/Dockerfile.spark3.2.x diff --git a/.github/workflows/docker-build-test-push-latest.yml b/.github/workflows/docker-build-test-push-latest.yml index 87d3e15..2c2c305 100644 --- a/.github/workflows/docker-build-test-push-latest.yml +++ b/.github/workflows/docker-build-test-push-latest.yml @@ -77,6 +77,12 @@ jobs: echo "SHORT_IMAGE_NAME=${{ inputs.image }}" | awk -F: '{print $1}' >> $GITHUB_ENV shell: bash + - name: Patch PySpark Dockerfile to be compatible with java +11 📦 + if: contains(inputs.image, 'pyspark-notebook:') && contains(inputs.build-args, 'spark_version=3.2.') && ! contains(inputs.build-args, 'openjdk_version=8') + run: | + cat ../images/patch/pyspark-notebook/Dockerfile.spark3.2.x >> images/$SHORT_IMAGE_NAME/Dockerfile + shell: bash + - name: Build image 🛠 run: | #docker buildx build --platform=linux/amd64 --rm --force-rm --tag ... diff --git a/images/README.md b/images/README.md new file mode 100644 index 0000000..f8674f0 --- /dev/null +++ b/images/README.md @@ -0,0 +1,13 @@ +# Dockerfiles patchs + +The directory contains a list of patchs for original dockerfiles: + +## List of patchs: + +[PySpark 3.2.x java 11 support](patch/pyspark-notebook/Dockerfile.spark3.2.x#L6): Add "--add-opens options" to be compatible with java 11 (<=3.2.x) + +The options are picked from the java module: [JavaModuleOptions.java](https://github.com/apache/spark/blob/8706ccdf461c3b7f82b94b9e953ca4547f551ab1/launcher/src/main/java/org/apache/spark/launcher/JavaModuleOptions.java) + +Please, checkk the following guide: [migrating-jdk-8-later-jdk-releases](https://docs.oracle.com/en/java/javase/16/migrate/migrating-jdk-8-later-jdk-releases.html#GUID-2F61F3A9-0979-46A4-8B49-325BA0EE8B66) for more information + + diff --git a/images/patch/pyspark-notebook/Dockerfile.spark3.2.x b/images/patch/pyspark-notebook/Dockerfile.spark3.2.x new file mode 100644 index 0000000..9b8931b --- /dev/null +++ b/images/patch/pyspark-notebook/Dockerfile.spark3.2.x @@ -0,0 +1,21 @@ + +#### Add "--add-opens options" to be compatible with java 11/17 (<=3.3.2) +#### The options are picked from the java module: +###### https://github.com/apache/spark/blob/8706ccdf461c3b7f82b94b9e953ca4547f551ab1/launcher/src/main/java/org/apache/spark/launcher/JavaModuleOptions.java +###### Doc: # https://docs.oracle.com/en/java/javase/16/migrate/migrating-jdk-8-later-jdk-releases.html#GUID-2F61F3A9-0979-46A4-8B49-325BA0EE8B66 +ENV JDK_JAVA_OPTIONS $JDK_JAVA_OPTIONS \ + --add-opens=java.base/java.lang=ALL-UNNAMED \ + --add-opens=java.base/java.lang.invoke=ALL-UNNAMED \ + --add-opens=java.base/java.lang.reflect=ALL-UNNAMED \ + --add-opens=java.base/java.io=ALL-UNNAMED \ + --add-opens=java.base/java.net=ALL-UNNAMED \ + --add-opens=java.base/java.nio=ALL-UNNAMED \ + --add-opens=java.base/java.util=ALL-UNNAMED \ + --add-opens=java.base/java.util.concurrent=ALL-UNNAMED \ + --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED \ + --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED \ + --add-opens=java.base/sun.nio.ch=ALL-UNNAMED \ + --add-opens=java.base/sun.nio.cs=ALL-UNNAMED \ + --add-opens=java.base/sun.security.action=ALL-UNNAMED \ + --add-opens=java.base/sun.util.calendar=ALL-UNNAMED \ + --add-opens=java.security.jgss/sun.security.krb5=ALL-UNNAMED From d8d96f77a4ca9b32b4d618af131d3aaea865d863 Mon Sep 17 00:00:00 2001 From: Idir Izitounene Date: Mon, 5 Feb 2024 13:22:42 +0100 Subject: [PATCH 05/11] Tagging - Apply long form tags to images --- .../install-patchs-and-extension/action.yml | 1 + .github/workflows/docker-tag-push.yml | 3 + python/src/extension/tagging/__init__.py | 0 python/src/extension/tagging/apply_tags.py | 90 +++++++++++ .../tagging/get_taggers_and_manifests.py | 29 ++++ .../src/extension/tagging/images_hierarchy.py | 141 ++++++++++++++++++ python/src/extension/tagging/taggers.py | 75 ++++++++++ 7 files changed, 339 insertions(+) create mode 100644 python/src/extension/tagging/__init__.py create mode 100755 python/src/extension/tagging/apply_tags.py create mode 100644 python/src/extension/tagging/get_taggers_and_manifests.py create mode 100644 python/src/extension/tagging/images_hierarchy.py create mode 100644 python/src/extension/tagging/taggers.py diff --git a/.github/actions/install-patchs-and-extension/action.yml b/.github/actions/install-patchs-and-extension/action.yml index 0785a97..2d73e71 100644 --- a/.github/actions/install-patchs-and-extension/action.yml +++ b/.github/actions/install-patchs-and-extension/action.yml @@ -7,6 +7,7 @@ runs: - name: Setup dev env requirement 📦 run: | cp -f requirements-dev.txt ../ + cat ../python/requirements-extended.txt >> ../requirements-dev.txt working-directory: ./docker-stacks shell: bash diff --git a/.github/workflows/docker-tag-push.yml b/.github/workflows/docker-tag-push.yml index 84a1e95..4769ef3 100644 --- a/.github/workflows/docker-tag-push.yml +++ b/.github/workflows/docker-tag-push.yml @@ -52,6 +52,9 @@ jobs: run: docker pull ${{ inputs.registry }}/${{ github.repository_owner }}/${{ inputs.image }} shell: bash + - name: Apply tags to the loaded image 🏷 + run: python3 -m extension.tagging.apply_tags --short-image-name ${{ inputs.image }} --registry ${{ inputs.registry }} --owner ${{ github.repository_owner }} + - name: Prepare image push 📦 run: | # The short image name (without tag) is necessary to push to the registry diff --git a/python/src/extension/tagging/__init__.py b/python/src/extension/tagging/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/python/src/extension/tagging/apply_tags.py b/python/src/extension/tagging/apply_tags.py new file mode 100755 index 0000000..3de58a2 --- /dev/null +++ b/python/src/extension/tagging/apply_tags.py @@ -0,0 +1,90 @@ +#!/usr/bin/env python3 +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +""" +Modification of the original file: +* Generate and apply the tags on the fly instead of writing them to an intermediate file +""" +import argparse +import logging + +import plumbum + +from tagging.docker_runner import DockerRunner +from extension.tagging.get_taggers_and_manifests import get_taggers_and_manifests + +docker = plumbum.local["docker"] + +LOGGER = logging.getLogger(__name__) + +class Tagging: + + def __init__(self, short_image_name: str, registry: str, owner: str,): + self.short_image_name, self.tag = short_image_name.split(":") + self.registry = registry + self.owner = owner + + def apply_tags(self) -> None: + """ + Tags //:tag with the tags reported by all taggers for this image + """ + LOGGER.info(f"Tagging image: {self.short_image_name}") + + image = f"{self.registry}/{self.owner}/{self.short_image_name}:{self.tag}" + + tags = self.generate_tags() + + for tag in tags: + LOGGER.info(f"Applying tag: {tag}") + docker["tag", image, tag] & plumbum.FG + + def generate_tags(self) -> [str]: + """ + Generate tags for the image //:latest + """ + LOGGER.info(f"Tagging image: {self.short_image_name}") + taggers, _ = get_taggers_and_manifests(self.short_image_name) + + image = f"{self.registry}/{self.owner}/{self.short_image_name}:{ self.tag }" + tags = [f"{self.registry}/{self.owner}/{self.short_image_name}:{ self.tag }"] + with DockerRunner(image) as container: + for tagger in taggers: + tagger_name = tagger.__class__.__name__ + tag_value = tagger.tag_value(container) + LOGGER.info( + f"Calculated tag, tagger_name: {tagger_name} tag_value: {tag_value}" + ) + tags.append( + f"{self.registry}/{self.owner}/{self.short_image_name}:{tag_value}" + ) + + return tags + + +if __name__ == "__main__": + logging.basicConfig(level=logging.INFO) + + arg_parser = argparse.ArgumentParser() + arg_parser.add_argument( + "--short-image-name", + required=True, + help="Short image name", + ) + arg_parser.add_argument( + "--registry", + required=True, + type=str, + choices=["ghcr.io"], + help="Image registry", + ) + arg_parser.add_argument( + "--owner", + required=True, + help="Owner of the image", + ) + args = arg_parser.parse_args() + + tagging = Tagging(args.short_image_name, args.registry, args.owner) + + tagging.apply_tags() diff --git a/python/src/extension/tagging/get_taggers_and_manifests.py b/python/src/extension/tagging/get_taggers_and_manifests.py new file mode 100644 index 0000000..c127d25 --- /dev/null +++ b/python/src/extension/tagging/get_taggers_and_manifests.py @@ -0,0 +1,29 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +""" +Modification of the original file: +* Reference new custom extended ALL_IMAGES map +""" + +from typing import Optional + +from extension.tagging.images_hierarchy import ALL_IMAGES +from tagging.manifests import ManifestInterface +from tagging.taggers import TaggerInterface + + +def get_taggers_and_manifests( + short_image_name: Optional[str], +) -> tuple[list[TaggerInterface], list[ManifestInterface]]: + if short_image_name is None: + return [[], []] # type: ignore + + image_description = ALL_IMAGES[short_image_name] + parent_taggers, parent_manifests = get_taggers_and_manifests( + image_description.parent_image + ) + return ( + parent_taggers + image_description.taggers, + parent_manifests + image_description.manifests, + ) diff --git a/python/src/extension/tagging/images_hierarchy.py b/python/src/extension/tagging/images_hierarchy.py new file mode 100644 index 0000000..9050874 --- /dev/null +++ b/python/src/extension/tagging/images_hierarchy.py @@ -0,0 +1,141 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +""" +Extension of the original file: +* Remove simple form taggers (DateTagger/SHATagger, etc) which may conflicts with multiple python version built on the same date +* Add long form tagger to uniquely identify an image +* Remove the dependency for pyspark-notebook to parent images tags +""" + +from dataclasses import dataclass, field +from typing import Optional +from extension.tagging.taggers import ( + JavaMajorVersionTagger, + JavaVersionTagger, + LongTagger, + SparkVersionTagger, + ScalaVersionTagger, + ScalaMajorMinorVersionTagger, +) + +from tagging.manifests import ( + AptPackagesManifest, + CondaEnvironmentManifest, + JuliaPackagesManifest, + ManifestInterface, + RPackagesManifest, + SparkInfoManifest, +) +from tagging.taggers import ( + DateTagger, + JuliaVersionTagger, + JupyterHubVersionTagger, + JupyterLabVersionTagger, + PythonMajorMinorVersionTagger, + PythonVersionTagger, + PytorchVersionTagger, + RVersionTagger, + SHATagger, + TaggerInterface, + TensorflowVersionTagger, + UbuntuVersionTagger, +) + + +@dataclass +class ImageDescription: + parent_image: Optional[str] + taggers: list[TaggerInterface] = field(default_factory=list) + manifests: list[ManifestInterface] = field(default_factory=list) + + +ALL_IMAGES = { + "docker-stacks-foundation": ImageDescription( + parent_image=None, + taggers=[ + LongTagger(UbuntuVersionTagger(), PythonVersionTagger()), + LongTagger(PythonVersionTagger(), SHATagger()), + LongTagger(PythonVersionTagger(), SHATagger()), + LongTagger(PythonVersionTagger(), DateTagger()), + LongTagger(PythonMajorMinorVersionTagger(), DateTagger()), + ], + manifests=[CondaEnvironmentManifest(), AptPackagesManifest()], + ), + "base-notebook": ImageDescription( + parent_image="docker-stacks-foundation", + taggers=[ + LongTagger(PythonVersionTagger(), JupyterHubVersionTagger(), JupyterLabVersionTagger()), + LongTagger(PythonVersionTagger(), JupyterHubVersionTagger(), JupyterLabVersionTagger(), DateTagger()), + ], + ), + "minimal-notebook": ImageDescription(parent_image="base-notebook"), + "scipy-notebook": ImageDescription(parent_image="minimal-notebook"), + "r-notebook": ImageDescription( + parent_image="minimal-notebook", + taggers=[ + LongTagger(PythonVersionTagger(), RVersionTagger()), + LongTagger(PythonVersionTagger(), RVersionTagger(), DateTagger()), + LongTagger(PythonVersionTagger(), RVersionTagger(), JupyterHubVersionTagger(), JupyterLabVersionTagger()), + LongTagger(PythonVersionTagger(), RVersionTagger(), JupyterHubVersionTagger(), JupyterLabVersionTagger(), DateTagger()), + ], + manifests=[RPackagesManifest()], + ), + "julia-notebook": ImageDescription( + parent_image="minimal-notebook", + taggers=[ + LongTagger(PythonVersionTagger(), JuliaVersionTagger()), + LongTagger(PythonVersionTagger(), JuliaVersionTagger(), DateTagger()), + LongTagger(PythonVersionTagger(), JuliaVersionTagger(), JupyterHubVersionTagger(), JupyterLabVersionTagger()), + LongTagger(PythonVersionTagger(), JuliaVersionTagger(), JupyterHubVersionTagger(), JupyterLabVersionTagger(), DateTagger()), + ], + manifests=[JuliaPackagesManifest()], + ), + "tensorflow-notebook": ImageDescription( + parent_image="scipy-notebook", + taggers=[ + LongTagger(PythonVersionTagger(), TensorflowVersionTagger()), + LongTagger(PythonVersionTagger(), TensorflowVersionTagger(), DateTagger()), + LongTagger(PythonVersionTagger(), TensorflowVersionTagger(), JupyterHubVersionTagger(), JupyterLabVersionTagger()), + LongTagger(PythonVersionTagger(), TensorflowVersionTagger(), JupyterHubVersionTagger(), JupyterLabVersionTagger(), DateTagger()), + ] + ), + "pytorch-notebook": ImageDescription( + parent_image="scipy-notebook", + taggers=[ + LongTagger(PythonVersionTagger(), PytorchVersionTagger()), + LongTagger(PythonVersionTagger(), PytorchVersionTagger(), DateTagger()), + LongTagger(PythonVersionTagger(), PytorchVersionTagger(), JupyterHubVersionTagger(), JupyterLabVersionTagger()), + LongTagger(PythonVersionTagger(), PytorchVersionTagger(), JupyterHubVersionTagger(), JupyterLabVersionTagger(), DateTagger()), + ] + ), + "datascience-notebook": ImageDescription( + parent_image="scipy-notebook", + taggers=[ + LongTagger(PythonVersionTagger(), RVersionTagger(), JuliaVersionTagger()), + LongTagger(PythonVersionTagger(), RVersionTagger(), JuliaVersionTagger(), DateTagger()), + LongTagger(PythonVersionTagger(), RVersionTagger(), JuliaVersionTagger(), JupyterHubVersionTagger(), JupyterLabVersionTagger()), + LongTagger(PythonVersionTagger(), RVersionTagger(), JuliaVersionTagger(), JupyterHubVersionTagger(), JupyterLabVersionTagger(), DateTagger()), + ], + manifests=[RPackagesManifest(), JuliaPackagesManifest()], + ), + "pyspark-notebook": ImageDescription( + parent_image=None, + taggers=[ + LongTagger(SparkVersionTagger(), PythonMajorMinorVersionTagger(), JavaMajorVersionTagger(), ScalaMajorMinorVersionTagger()), + LongTagger(SparkVersionTagger(), PythonMajorMinorVersionTagger(), JavaMajorVersionTagger(), ScalaMajorMinorVersionTagger(), SHATagger()), + LongTagger(SparkVersionTagger(), PythonMajorMinorVersionTagger(), JavaMajorVersionTagger(), ScalaMajorMinorVersionTagger(), DateTagger()), + LongTagger(SparkVersionTagger(), PythonVersionTagger(), JavaVersionTagger(), ScalaVersionTagger(), JupyterHubVersionTagger(), JupyterLabVersionTagger()), + LongTagger(SparkVersionTagger(), PythonVersionTagger(), JavaVersionTagger(), ScalaVersionTagger(), JupyterHubVersionTagger(), JupyterLabVersionTagger(), DateTagger()), + ], + manifests=[SparkInfoManifest()], + ), + "all-spark-notebook": ImageDescription( + parent_image="pyspark-notebook", + taggers=[ + LongTagger(SparkVersionTagger(), PythonVersionTagger(), RVersionTagger(), JavaVersionTagger(), ScalaVersionTagger(), JupyterHubVersionTagger(), JupyterLabVersionTagger()), + LongTagger(SparkVersionTagger(), PythonVersionTagger(), RVersionTagger(), JavaVersionTagger(), ScalaVersionTagger(), JupyterHubVersionTagger(), JupyterLabVersionTagger(), DateTagger()), + ], + manifests=[RPackagesManifest()], + ), +} diff --git a/python/src/extension/tagging/taggers.py b/python/src/extension/tagging/taggers.py new file mode 100644 index 0000000..3c2632e --- /dev/null +++ b/python/src/extension/tagging/taggers.py @@ -0,0 +1,75 @@ +# Copyright (c) Jupyter Development Team. +# Distributed under the terms of the Modified BSD License. + +""" +* Add custom taggers (long form, scala etc taggers) +* Fix existing SparkVersionTagger when jdk '--add-opens' options are enabled for spark 3.2.x (java 11 compatibility) +* Unset JDK_JAVA_OPTIONS when asking for java program version +""" + +from functools import cache + +from docker.models.containers import Container + +from tagging.docker_runner import DockerRunner + +from tagging.taggers import * + +@cache +def _get_program_version(container: Container, program: str) -> str: + """"Get program version. Handle compatibility with spark 3.2.x/Java 11""" + return DockerRunner.run_simple_command(container, cmd=f"/bin/sh -c 'unset JDK_JAVA_OPTIONS && {program} --version'") + +def spark_version_prefix_line(cmd_output: str, search: str) -> int: + for idx, line in enumerate(cmd_output.split("\n"), start=0): + if line.find(search) != -1: + return idx + return -1 + +class SparkVersionTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + SPARK_VERSION_LINE_PREFIX = r" /___/ .__/\_,_/_/ /_/\_\ version" + spark_version = _get_program_version(container, "spark-submit") + line = spark_version_prefix_line(spark_version, SPARK_VERSION_LINE_PREFIX) + assert line > -1, f"Spark version line starting with '{SPARK_VERSION_LINE_PREFIX}' not found" + version_line = spark_version.split("\n")[line] + assert version_line.startswith(SPARK_VERSION_LINE_PREFIX), f"Spark version line '{version_line}' does not starts with '{SPARK_VERSION_LINE_PREFIX}'" + return "spark-" + version_line.split(" ")[-1] + +class ScalaMajorMinorVersionTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + full_version = ScalaVersionTagger.tag_value(container) + return full_version[: full_version.rfind(".")] + +class ScalaVersionTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + SCALA_VERSION_LINE_PREFIX = "Using Scala version" + + spark_version = _get_program_version(container, "spark-submit") + line = spark_version_prefix_line(spark_version, SCALA_VERSION_LINE_PREFIX) + assert line > -1, f"Spark version line starting with '{SCALA_VERSION_LINE_PREFIX}' not found" + scala_version_line = spark_version.split("\n")[line] + assert scala_version_line.startswith(SCALA_VERSION_LINE_PREFIX), f"Scala version line '{scala_version_line}' does not starts with '{SCALA_VERSION_LINE_PREFIX}'" + return "scala-" + scala_version_line.split(" ")[3].split(",")[0] + +class JavaVersionTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + return "java-" + _get_program_version(container, "java").split()[1] + +class JavaMajorVersionTagger(TaggerInterface): + @staticmethod + def tag_value(container: Container) -> str: + full_version = JavaVersionTagger.tag_value(container) + return full_version[: full_version.find(".")] + +class LongTagger(TaggerInterface): + """ Long form tagger which combines all versions in a single tag """ + def __init__(self, *taggers: TaggerInterface): + self.taggers = taggers + + def tag_value(self, container: Container) -> str: + return "-".join((lambda taggers : (t.tag_value(container) for t in taggers))(self.taggers)) From 7998c92e0dfb0b249f303e6e040b59d78ac9f16a Mon Sep 17 00:00:00 2001 From: Idir Izitounene Date: Mon, 5 Feb 2024 13:28:46 +0100 Subject: [PATCH 06/11] Build - Add automatic re-run of failed jobs --- .github/.gitignore | 195 ------------------------------- .github/workflows/auto-rerun.yml | 27 +++++ .github/workflows/main.yml | 23 ++++ 3 files changed, 50 insertions(+), 195 deletions(-) delete mode 100644 .github/.gitignore create mode 100644 .github/workflows/auto-rerun.yml diff --git a/.github/.gitignore b/.github/.gitignore deleted file mode 100644 index 7df34e5..0000000 --- a/.github/.gitignore +++ /dev/null @@ -1,195 +0,0 @@ -# Byte-compiled / optimized / DLL files -__pycache__/ -*.py[cod] -*$py.class - -# C extensions -*.so - -# Distribution / packaging -.Python -build/ -develop-eggs/ -dist/ -downloads/ -eggs/ -.eggs/ -lib/ -lib64/ -parts/ -sdist/ -var/ -wheels/ -share/python-wheels/ -*.egg-info/ -.installed.cfg -*.egg -MANIFEST - -# PyInstaller -# Usually these files are written by a python script from a template -# before PyInstaller builds the exe, so as to inject date/other infos into it. -*.manifest -*.spec - -# Installer logs -pip-log.txt -pip-delete-this-directory.txt - -# Unit test / coverage reports -htmlcov/ -.tox/ -.nox/ -.coverage -.coverage.* -.cache -nosetests.xml -coverage.xml -*.cover -*.py,cover -.hypothesis/ -.pytest_cache/ -cover/ - -# Translations -*.mo -*.pot - -# Django stuff: -*.log -local_settings.py -db.sqlite3 -db.sqlite3-journal - -# Flask stuff: -instance/ -.webassets-cache - -# Scrapy stuff: -.scrapy - -# Sphinx documentation -docs/_build/ - -# PyBuilder -.pybuilder/ -target/ - -# Jupyter Notebook -.ipynb_checkpoints - -# IPython -profile_default/ -ipython_config.py - -# pyenv -# For a library or package, you might want to ignore these files since the code is -# intended to run in multiple environments; otherwise, check them in: -# .python-version - -# pipenv -# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. -# However, in case of collaboration, if having platform-specific dependencies or dependencies -# having no cross-platform support, pipenv may install dependencies that don't work, or not -# install all needed dependencies. -#Pipfile.lock - -# poetry -# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. -# This is especially recommended for binary packages to ensure reproducibility, and is more -# commonly ignored for libraries. -# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control -#poetry.lock - -# pdm -# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control. -#pdm.lock -# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it -# in version control. -# https://pdm.fming.dev/#use-with-ide -.pdm.toml - -# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm -__pypackages__/ - -# Celery stuff -celerybeat-schedule -celerybeat.pid - -# SageMath parsed files -*.sage.py - -# Environments -.env -.venv -env/ -venv/ -ENV/ -env.bak/ -venv.bak/ - -# Spyder project settings -.spyderproject -.spyproject - -# Rope project settings -.ropeproject - -# mkdocs documentation -/site - -# mypy -.mypy_cache/ -.dmypy.json -dmypy.json - -# Pyre type checker -.pyre/ - -# pytype static type analyzer -.pytype/ - -# Cython debug symbols -cython_debug/ - -# PyCharm -# JetBrains specific template is maintained in a separate JetBrains.gitignore that can -# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore -# and can be added to the global gitignore or merged into this file. For a more nuclear -# option (not recommended) you can uncomment the following to ignore the entire idea folder. -#.idea/ - -################################################################## -# The content above is copied from # -# https://github.com/github/gitignore/blob/main/Python.gitignore # -# Please, add the content only below these lines # -################################################################## - -### IntelliJ IDEA ### -.idea -*.iml - -### Eclipse ### -.apt_generated -.classpath -.factorypath -.project -.settings -.springBeans -.sts4-cache -bin/ -!**/src/main/**/bin/ -!**/src/test/**/bin/ - -### NetBeans ### -/nbproject/private/ -/nbbuild/ -/dist/ -/nbdist/ -/.nb-gradle/ - -### VS Code ### -.vscode/ - -### Mac OS ### -.DS_Store diff --git a/.github/workflows/auto-rerun.yml b/.github/workflows/auto-rerun.yml new file mode 100644 index 0000000..6ecc3b4 --- /dev/null +++ b/.github/workflows/auto-rerun.yml @@ -0,0 +1,27 @@ +# Credit for the following workraound: https://github.com/orgs/community/discussions/67654#discussioncomment-8038649 +name: Automatic partital rerun on workflow failure +on: + workflow_dispatch: + inputs: + run_id: + required: true + workflow_name: + required: true + workflow_sha: + required: true +jobs: + rerun: + runs-on: ubuntu-latest + permissions: + contents: write + actions: write + packages: write + steps: + - name: Re-run workflow ${{ inputs.workflow_name }}-${{ inputs.run_id }} + env: + GH_REPO: ${{ github.repository }} + GH_TOKEN: ${{ github.token }} + GH_DEBUG: api + run: | + gh run watch ${{ inputs.run_id }} > /dev/null 2>&1 + gh run rerun ${{ inputs.run_id }} --failed diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index ae12d3a..d9e2ea2 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -179,5 +179,28 @@ jobs: registry_token: ${{ secrets.REGISTRY_ROBOT_TOKEN }} needs: [build-version-compatibility-matrix, build-datascience, build-spark] + # Credit for the following workraound: https://github.com/orgs/community/discussions/67654#discussioncomment-8038649 + partial-rerun-on-failure: + # Allow re-run the main branch only + if: failure() && github.ref == 'refs/heads/main' && fromJSON(github.run_attempt) < 3 + runs-on: ubuntu-latest + permissions: + contents: write + actions: write + packages: write + steps: + - name: "Re-run failed jobs" + env: + GH_REPO: ${{ github.repository }} + GH_TOKEN: ${{ github.token }} + GH_DEBUG: api + run: | + gh workflow run auto-rerun.yml \ + -F run_id=${{ github.run_id }} \ + -F workflow_name=${{ github.workflow }} \ + -F workflow_sha=${{ github.workflow_sha }} + shell: bash + + needs: [push-base, push-datascience, push-spark] \ No newline at end of file From d94e222f0dfe46998b9952009ab4ea6f3c650514 Mon Sep 17 00:00:00 2001 From: Idir Izitounene Date: Mon, 5 Feb 2024 13:37:50 +0100 Subject: [PATCH 07/11] Workflow trigger - Configure paths filter --- .github/workflows/main.yml | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index d9e2ea2..f94dd75 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -14,8 +14,15 @@ on: - ".build/.versions.yml" + - "python/src/patch/**" - "python/src/extension/**" - - "docker-stacks/**" + - "docker-stacks/images/**" + - "docker-stacks/tests/**" + - "docker-stacks/tagging/**" + - "images/**" + + - "!python/src/patch/README.md" + - "!images/README.md" push: branches: @@ -32,8 +39,15 @@ on: - ".build/.versions.yml" + - "python/src/patch/**" - "python/src/extension/**" - - "docker-stacks/**" + - "docker-stacks/images/**" + - "docker-stacks/tests/**" + - "docker-stacks/tagging/**" + - "images/**" + + - "!python/src/patch/README.md" + - "!images/README.md" workflow_dispatch: From 6e213a413d97c689fb5027661f76c829e4690106 Mon Sep 17 00:00:00 2001 From: Idir Izitounene Date: Mon, 5 Feb 2024 14:15:36 +0100 Subject: [PATCH 08/11] Container registry - Pass the registry as parameter and defaults to ghcr.io --- .github/workflows/build-base.yml | 10 +++++++++- .github/workflows/build-datascience.yml | 9 +++++++++ .github/workflows/build-spark.yml | 5 +++-- .github/workflows/docker-build-test-push-latest.yml | 3 +-- .github/workflows/docker-tag-push.yml | 3 +-- .github/workflows/main.yml | 8 +++++++- 6 files changed, 30 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build-base.yml b/.github/workflows/build-base.yml index 4c26f5c..71c8023 100644 --- a/.github/workflows/build-base.yml +++ b/.github/workflows/build-base.yml @@ -11,6 +11,10 @@ on: description: Tag to use for latest base images (foundation, minimal, etc) required: true type: string + registry: + description: The list of tags space separated values + required: true + type: string runs-on: description: GitHub Actions Runner image required: true @@ -32,9 +36,10 @@ jobs: with: parent-image: "" image: docker-stacks-foundation:${{ inputs.python_dev_tag }} - runs-on: ubuntu-latest + registry: ${{ inputs.registry }} build-args: PYTHON_VERSION=${{ inputs.python_version }} + runs-on: ubuntu-latest secrets: registry_username: ${{ secrets.registry_username }} registry_token: ${{ secrets.registry_token }} @@ -44,6 +49,7 @@ jobs: with: parent-image: docker-stacks-foundation:${{ inputs.python_dev_tag }} image: base-notebook:${{ inputs.python_dev_tag }} + registry: ${{ inputs.registry }} runs-on: ubuntu-latest secrets: registry_username: ${{ secrets.registry_username }} @@ -55,6 +61,7 @@ jobs: with: parent-image: base-notebook:${{ inputs.python_dev_tag }} image: minimal-notebook:${{ inputs.python_dev_tag }} + registry: ${{ inputs.registry }} runs-on: ubuntu-latest secrets: registry_username: ${{ secrets.registry_username }} @@ -66,6 +73,7 @@ jobs: with: parent-image: minimal-notebook:${{ inputs.python_dev_tag }} image: scipy-notebook:${{ inputs.python_dev_tag }} + registry: ${{ inputs.registry }} runs-on: ubuntu-latest secrets: registry_username: ${{ secrets.registry_username }} diff --git a/.github/workflows/build-datascience.yml b/.github/workflows/build-datascience.yml index adbeca9..0bffa9b 100644 --- a/.github/workflows/build-datascience.yml +++ b/.github/workflows/build-datascience.yml @@ -7,6 +7,10 @@ on: description: Tag to use for latest base images (foundation, minimal, etc) required: true type: string + registry: + description: The list of tags space separated values + required: true + type: string runs-on: description: GitHub Actions Runner image required: true @@ -27,6 +31,7 @@ jobs: with: parent-image: minimal-notebook:${{ inputs.python_dev_tag }} image: r-notebook:${{ inputs.python_dev_tag }} + registry: ${{ inputs.registry }} runs-on: ${{ inputs.runs-on }} secrets: registry_username: ${{ secrets.registry_username }} @@ -37,6 +42,7 @@ jobs: with: parent-image: scipy-notebook:${{ inputs.python_dev_tag }} image: datascience-notebook:${{ inputs.python_dev_tag }} + registry: ${{ inputs.registry }} runs-on: ${{ inputs.runs-on }} secrets: registry_username: ${{ secrets.registry_username }} @@ -47,6 +53,7 @@ jobs: # with: # parent-image: minimal-notebook:${{ inputs.python_dev_tag }} # image: julia-notebook + # registry: ${{ inputs.registry }} # runs-on: ${{ inputs.runs-on }} # secrets: # registry_username: ${{ secrets.registry_username }} @@ -57,6 +64,7 @@ jobs: # with: # parent-image: scipy-notebook:${{ inputs.python_dev_tag }} # image: tensorflow-notebook + # registry: ${{ inputs.registry }} # runs-on: ${{ inputs.runs-on }} # secrets: # registry_username: ${{ secrets.registry_username }} @@ -67,6 +75,7 @@ jobs: # with: # parent-image: scipy-notebook:${{ inputs.python_dev_tag }} # image: pytorch-notebook + # registry: ${{ inputs.registry }} # runs-on: ${{ inputs.runs-on }} # secrets: # registry_username: ${{ secrets.registry_username }} diff --git a/.github/workflows/build-spark.yml b/.github/workflows/build-spark.yml index a140521..255e5d1 100644 --- a/.github/workflows/build-spark.yml +++ b/.github/workflows/build-spark.yml @@ -37,9 +37,8 @@ on: type: string registry: description: The list of tags space separated values - required: false + required: true type: string - default: "ghcr.io" runs-on: description: GitHub Actions Runner image required: true @@ -60,6 +59,7 @@ jobs: with: parent-image: scipy-notebook:${{ inputs.python_dev_tag }} image: pyspark-notebook:${{ inputs.spark_dev_tag }} + registry: ${{ inputs.registry }} runs-on: ${{ inputs.runs-on }} build-args: spark_download_url=${{ inputs.spark_download_url }} @@ -76,6 +76,7 @@ jobs: with: parent-image: pyspark-notebook:${{ inputs.spark_dev_tag }} image: all-spark-notebook:${{ inputs.spark_dev_tag }} + registry: ${{ inputs.registry }} runs-on: ${{ inputs.runs-on }} secrets: registry_username: ${{ secrets.registry_username }} diff --git a/.github/workflows/docker-build-test-push-latest.yml b/.github/workflows/docker-build-test-push-latest.yml index 2c2c305..9998882 100644 --- a/.github/workflows/docker-build-test-push-latest.yml +++ b/.github/workflows/docker-build-test-push-latest.yml @@ -13,9 +13,8 @@ on: type: string registry: description: The list of tags space separated values - required: false + required: true type: string - default: "ghcr.io" build-args: description: Build args comma separated list, ex. PYTHON_VERSION=3.11, ... required: false diff --git a/.github/workflows/docker-tag-push.yml b/.github/workflows/docker-tag-push.yml index 4769ef3..7b7889d 100644 --- a/.github/workflows/docker-tag-push.yml +++ b/.github/workflows/docker-tag-push.yml @@ -9,9 +9,8 @@ on: type: string registry: description: The list of tags space separated values - required: false + required: true type: string - default: "ghcr.io" runs-on: description: GitHub Actions Runner image required: true diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index f94dd75..b8029fc 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -26,7 +26,7 @@ on: push: branches: - - main + - build-pipeline paths: - ".github/workflows/main.yml" - ".github/workflows/build-base.yml" @@ -97,6 +97,7 @@ jobs: with: python_version: ${{ matrix.python.python_version }} python_dev_tag: ${{ matrix.python.python_dev_tag }} + registry: ${{ vars.REGISTRY || 'ghcr.io' }} runs-on: ubuntu-latest secrets: registry_username: ${{ secrets.REGISTRY_USERNAME }} @@ -113,6 +114,7 @@ jobs: uses: ./.github/workflows/build-datascience.yml with: python_dev_tag: ${{ matrix.python.python_dev_tag }} + registry: ${{ vars.REGISTRY || 'ghcr.io' }} runs-on: ubuntu-latest secrets: registry_username: ${{ secrets.REGISTRY_USERNAME }} @@ -136,6 +138,7 @@ jobs: hadoop_version: ${{ matrix.spark.hadoop_version }} python_dev_tag: ${{ matrix.spark.python_dev_tag }} spark_dev_tag: ${{ matrix.spark.spark_dev_tag }} + registry: ${{ vars.REGISTRY || 'ghcr.io' }} runs-on: ubuntu-latest secrets: registry_username: ${{ secrets.REGISTRY_USERNAME }} @@ -154,6 +157,7 @@ jobs: uses: ./.github/workflows/docker-tag-push.yml with: image: "${{ matrix.image }}:${{ matrix.python.python_dev_tag }}" + registry: ${{ vars.REGISTRY || 'ghcr.io' }} runs-on: ubuntu-latest secrets: registry_username: ${{ secrets.REGISTRY_USERNAME }} @@ -171,6 +175,7 @@ jobs: uses: ./.github/workflows/docker-tag-push.yml with: image: "${{ matrix.image }}:${{ matrix.python.python_dev_tag }}" + registry: ${{ vars.REGISTRY || 'ghcr.io' }} runs-on: ubuntu-latest secrets: registry_username: ${{ secrets.REGISTRY_USERNAME }} @@ -187,6 +192,7 @@ jobs: uses: ./.github/workflows/docker-tag-push.yml with: image: "${{ matrix.image }}:${{ matrix.spark.spark_dev_tag }}" + registry: ${{ vars.REGISTRY || 'ghcr.io' }} runs-on: ubuntu-latest secrets: registry_username: ${{ secrets.REGISTRY_USERNAME }} From d2c62c67d5fb1d3c7ca9131d40ac7d5356f66a15 Mon Sep 17 00:00:00 2001 From: Idir Izitounene Date: Tue, 6 Feb 2024 09:54:30 +0100 Subject: [PATCH 09/11] Extension - Create okdp python module for cutsom extensions --- .../install-patchs-and-extension/action.yml | 4 +- .../docker-build-test-push-latest.yml | 2 + .github/workflows/docker-tag-push.yml | 2 +- .github/workflows/main.yml | 26 +- .github/workflows/unit-tests.yml | 28 ++ .gitignore | 2 - .vscode/settings.json | 7 + python/{src/extension => okdp}/__init__.py | 0 .../matrix => okdp/extension}/__init__.py | 0 .../extension/matrix}/__init__.py | 0 .../extension/matrix/constants.py | 0 .../extension/matrix/utils}/__init__.py | 0 .../extension/matrix/utils/matrix_utils.py | 17 +- .../matrix/version_compatibility_matrix.py | 28 +- python/okdp/extension/tagging/__init__.py | 0 .../extension/tagging/apply_tags.py | 2 +- .../tagging/get_taggers_and_manifests.py | 2 +- .../extension/tagging/images_hierarchy.py | 2 +- .../extension/tagging/taggers.py | 0 python/{src => okdp}/patch/README.md | 0 .../test_python_version.py | 0 python/{src => okdp}/patch/tests/run_tests.py | 0 python/tests/__init__.py | 0 python/tests/extension/__init__.py | 0 python/tests/extension/matrix/__init__.py | 0 python/tests/extension/matrix/conftest.py | 49 ++++ .../expected_build_matrix_empty.json | 242 ++++++++++++++++++ .../test_version_compatibility_matrix.py | 168 ++++++++++++ python/tests/pytest.ini | 2 + 29 files changed, 547 insertions(+), 36 deletions(-) create mode 100644 .github/workflows/unit-tests.yml create mode 100644 .vscode/settings.json rename python/{src/extension => okdp}/__init__.py (100%) rename python/{src/extension/matrix => okdp/extension}/__init__.py (100%) rename python/{src/extension/matrix/utils => okdp/extension/matrix}/__init__.py (100%) rename python/{src => okdp}/extension/matrix/constants.py (100%) rename python/{src/extension/tagging => okdp/extension/matrix/utils}/__init__.py (100%) rename python/{src => okdp}/extension/matrix/utils/matrix_utils.py (87%) rename python/{src => okdp}/extension/matrix/version_compatibility_matrix.py (74%) create mode 100644 python/okdp/extension/tagging/__init__.py rename python/{src => okdp}/extension/tagging/apply_tags.py (96%) rename python/{src => okdp}/extension/tagging/get_taggers_and_manifests.py (92%) rename python/{src => okdp}/extension/tagging/images_hierarchy.py (99%) rename python/{src => okdp}/extension/tagging/taggers.py (100%) rename python/{src => okdp}/patch/README.md (100%) rename python/{src => okdp}/patch/tests/docker-stacks-foundation/test_python_version.py (100%) rename python/{src => okdp}/patch/tests/run_tests.py (100%) create mode 100644 python/tests/__init__.py create mode 100644 python/tests/extension/__init__.py create mode 100644 python/tests/extension/matrix/__init__.py create mode 100644 python/tests/extension/matrix/conftest.py create mode 100644 python/tests/extension/matrix/resources/expected_build_matrix_empty.json create mode 100644 python/tests/extension/matrix/test_version_compatibility_matrix.py create mode 100644 python/tests/pytest.ini diff --git a/.github/actions/install-patchs-and-extension/action.yml b/.github/actions/install-patchs-and-extension/action.yml index 2d73e71..3ceed4f 100644 --- a/.github/actions/install-patchs-and-extension/action.yml +++ b/.github/actions/install-patchs-and-extension/action.yml @@ -13,8 +13,8 @@ runs: - name: Copy patchs 📦 run: | - cp -fr ../python/src/patch/* ./ - cp -fr ../python/src/extension ./ + cp -fr ../python/okdp/patch/* ./ + cp -fr ../python/okdp ./ working-directory: ./docker-stacks shell: bash diff --git a/.github/workflows/docker-build-test-push-latest.yml b/.github/workflows/docker-build-test-push-latest.yml index 9998882..7b58885 100644 --- a/.github/workflows/docker-build-test-push-latest.yml +++ b/.github/workflows/docker-build-test-push-latest.yml @@ -61,6 +61,7 @@ jobs: if: inputs.parent-image != '' run: docker pull ${{ inputs.registry }}/${{ github.repository_owner }}/${{ inputs.parent-image }} shell: bash + - name: Prepare image build (build args) 📦 run: | for build_arg in ${{ inputs.build-args }} @@ -97,6 +98,7 @@ jobs: BUILDKIT_PROGRESS: plain shell: bash + # Run docker-stacks tests (docker-stacks/tests) - name: Run tests ✅ # Skip tests when running with ACT if: env.ACT_SKIP_TESTS == '' diff --git a/.github/workflows/docker-tag-push.yml b/.github/workflows/docker-tag-push.yml index 7b7889d..50cf897 100644 --- a/.github/workflows/docker-tag-push.yml +++ b/.github/workflows/docker-tag-push.yml @@ -52,7 +52,7 @@ jobs: shell: bash - name: Apply tags to the loaded image 🏷 - run: python3 -m extension.tagging.apply_tags --short-image-name ${{ inputs.image }} --registry ${{ inputs.registry }} --owner ${{ github.repository_owner }} + run: python3 -m okdp.extension.tagging.apply_tags --short-image-name ${{ inputs.image }} --registry ${{ inputs.registry }} --owner ${{ github.repository_owner }} - name: Prepare image push 📦 run: | diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index b8029fc..dad509d 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -14,14 +14,13 @@ on: - ".build/.versions.yml" - - "python/src/patch/**" - - "python/src/extension/**" + - "python/okdp/**" - "docker-stacks/images/**" - "docker-stacks/tests/**" - "docker-stacks/tagging/**" - "images/**" - - "!python/src/patch/README.md" + - "!python/okdp/patch/README.md" - "!images/README.md" push: @@ -39,14 +38,13 @@ on: - ".build/.versions.yml" - - "python/src/patch/**" - - "python/src/extension/**" + - "python/okdp/**" - "docker-stacks/images/**" - "docker-stacks/tests/**" - "docker-stacks/tagging/**" - "images/**" - - "!python/src/patch/README.md" + - "!python/okdp/patch/README.md" - "!images/README.md" workflow_dispatch: @@ -57,7 +55,16 @@ concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true +defaults: + run: + working-directory: ./docker-stacks + jobs: + run-unit-tests: + uses: ./.github/workflows/unit-tests.yml + with: + runs-on: ubuntu-latest + build-version-compatibility-matrix: runs-on: ubuntu-latest outputs: @@ -80,11 +87,12 @@ jobs: - name: Build version compatibility matrix 🛠 id: set-matrix run: | - python python/src/extension/matrix/version_compatibility_matrix.py \ - --versions-matrix-path .build/.versions.yml \ - --git-branch ${{ steps.branch.outputs.current_branch || steps.branch.outputs.tag}} >> $GITHUB_OUTPUT + python3 -m okdp.extension.matrix.version_compatibility_matrix \ + --versions-matrix-path ../.build/.versions.yml \ + --git-branch ${{ steps.branch.outputs.current_branch || steps.branch.outputs.tag}} >> $GITHUB_OUTPUT cat $GITHUB_OUTPUT shell: bash + needs: [run-unit-tests] build-base: name: build-base (python-${{ matrix.python.python_version }}) diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml new file mode 100644 index 0000000..a85fe29 --- /dev/null +++ b/.github/workflows/unit-tests.yml @@ -0,0 +1,28 @@ +on: + workflow_call: + inputs: + runs-on: + description: GitHub Actions Runner image + required: true + type: string + +jobs: + + unit-tests: + runs-on: ${{ inputs.runs-on }} + + steps: + - name: Checkout Repo ⚡️ + uses: actions/checkout@v4 + + - name: Setup dev env patchs 📦 + uses: ./.github/actions/install-patchs-and-extension + + - name: Create dev environment 📦 + uses: ./docker-stacks/.github/actions/create-dev-env + + - name: Run unit tests + run: pytest python/tests -v + shell: bash + + diff --git a/.gitignore b/.gitignore index 7df34e5..1bfe270 100644 --- a/.gitignore +++ b/.gitignore @@ -188,8 +188,6 @@ bin/ /nbdist/ /.nb-gradle/ -### VS Code ### -.vscode/ ### Mac OS ### .DS_Store diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..4029e1c --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,7 @@ +{ + "python.analysis.extraPaths": [ + "./python/okdp", + "./python/tests", + "./docker-stacks" + ] +} \ No newline at end of file diff --git a/python/src/extension/__init__.py b/python/okdp/__init__.py similarity index 100% rename from python/src/extension/__init__.py rename to python/okdp/__init__.py diff --git a/python/src/extension/matrix/__init__.py b/python/okdp/extension/__init__.py similarity index 100% rename from python/src/extension/matrix/__init__.py rename to python/okdp/extension/__init__.py diff --git a/python/src/extension/matrix/utils/__init__.py b/python/okdp/extension/matrix/__init__.py similarity index 100% rename from python/src/extension/matrix/utils/__init__.py rename to python/okdp/extension/matrix/__init__.py diff --git a/python/src/extension/matrix/constants.py b/python/okdp/extension/matrix/constants.py similarity index 100% rename from python/src/extension/matrix/constants.py rename to python/okdp/extension/matrix/constants.py diff --git a/python/src/extension/tagging/__init__.py b/python/okdp/extension/matrix/utils/__init__.py similarity index 100% rename from python/src/extension/tagging/__init__.py rename to python/okdp/extension/matrix/utils/__init__.py diff --git a/python/src/extension/matrix/utils/matrix_utils.py b/python/okdp/extension/matrix/utils/matrix_utils.py similarity index 87% rename from python/src/extension/matrix/utils/matrix_utils.py rename to python/okdp/extension/matrix/utils/matrix_utils.py index 262f85c..d7f9081 100644 --- a/python/src/extension/matrix/utils/matrix_utils.py +++ b/python/okdp/extension/matrix/utils/matrix_utils.py @@ -1,8 +1,8 @@ from itertools import groupby import itertools -from constants import * +from okdp.extension.matrix.constants import * -def merge_on(elem) -> str: +def group_on(elem) -> str: return str(elem[PYTHON_VERSION]) + "_".join(str(elem[JAVA_VERSION])) + str(elem[HADOOP_VERSION]) def intersect_dicts(dict1: dict, dict2: dict) -> dict: @@ -31,7 +31,7 @@ def merge_dicts(dict1: dict, *args: dict) -> dict: dict_res[key] = list(set(sum([value , dict1[key]], []))) return dict_res if len(args) == 1 else merge_dicts(dict_res, *args[1:]) -def intersect_versions(groups: list[dict], on_dict: dict) -> list[dict]: +def join_versions(groups: list[dict], on_dict: dict) -> list[dict]: """ Intersect groups of dicts values with the provided on_dict """ ### Intersect the groups with on_dict result = [] @@ -40,14 +40,13 @@ def intersect_versions(groups: list[dict], on_dict: dict) -> list[dict]: return result -def merge_versions(dicts: list[dict]) -> list[dict]: - """ Merge list of dicts by keeping all the values for the keys, - Then group the elements by python_version key +def group_versions_by(dicts: list[dict], group_on) -> list[dict]: + """ Group the spark versions by PYTHON_VERSION/JAVA_VERSION/HADOOP_VERSION """ ### Group the elements by python_version python_groups = [] - data = sorted(dicts, key=merge_on) - for k, g in groupby(data, merge_on): + data = sorted(dicts, key=group_on) + for k, g in groupby(data, group_on): python_groups.append(list(g)) ### Merge the groups @@ -56,7 +55,7 @@ def merge_versions(dicts: list[dict]) -> list[dict]: result.extend(group) return result -def filter_versions (dicts: list[dict]) -> list[dict]: +def ignore_invalid_versions (dicts: list[dict]) -> list[dict]: return list(filter(lambda elem: elem.get(SPARK_VERSION) and elem.get(JAVA_VERSION) and diff --git a/python/src/extension/matrix/version_compatibility_matrix.py b/python/okdp/extension/matrix/version_compatibility_matrix.py similarity index 74% rename from python/src/extension/matrix/version_compatibility_matrix.py rename to python/okdp/extension/matrix/version_compatibility_matrix.py index 86adb9e..fb3ac05 100644 --- a/python/src/extension/matrix/version_compatibility_matrix.py +++ b/python/okdp/extension/matrix/version_compatibility_matrix.py @@ -2,9 +2,10 @@ import yaml import argparse import logging -from constants import * +from okdp.extension.matrix.constants import * -from utils.matrix_utils import filter_versions, intersect_versions, merge_versions, normalize_matrix, normalize_scala_version, normalize_value, remove_duplicates +from okdp.extension.matrix.utils.matrix_utils import ignore_invalid_versions, join_versions, group_versions_by, normalize_matrix, normalize_scala_version, normalize_value, remove_duplicates +from okdp.extension.matrix.utils.matrix_utils import group_on LOGGER = logging.getLogger(__name__) @@ -23,17 +24,24 @@ def __init__(self, path: str, git_branch: str): self.git_branch = git_branch.replace("/", "-") self.__validate__() + self._normalize_values_() + + + def _normalize_values_(self): + """"Convert simple value to an array + Ex.: python_version: 3.11 => python_version: ['3.11'] + """ self.compatibility_matrix = [dict(map(lambda kv: (kv[0], normalize_value(kv[1])), e.items())) for e in self.compatibility_matrix] self.build_matrix = dict(map(lambda kv: (kv[0], normalize_value(kv[1])), self.build_matrix.items())) - + def __validate__(self): - if not self.compatibility_matrix: - raise ValueError(f"The compatibility-matrix section is mandatory") + if not self.compatibility_matrix: + raise ValueError(f"The compatibility-matrix section is mandatory") def generate_matrix(self) -> (str, dict): compatibility_versions_matrix = [dict(map(lambda kv: (kv[0], normalize_value(kv[1])), e.items())) for e in self.compatibility_matrix] - spark_version_matrix = normalize_matrix(filter_versions(intersect_versions(merge_versions(compatibility_versions_matrix), self.build_matrix))) + spark_version_matrix = normalize_matrix(ignore_invalid_versions(join_versions(group_versions_by(compatibility_versions_matrix, group_on=group_on), self.build_matrix))) spark_version_matrix = normalize_scala_version(self.add_latest_dev_tags(spark_version_matrix)) python_version_matrix = remove_duplicates([{PYTHON_VERSION: e.get(PYTHON_VERSION), PYTHON_DEV_TAG: e.get(PYTHON_DEV_TAG)} for e in spark_version_matrix ]) return (spark_version_matrix, python_version_matrix) @@ -73,11 +81,11 @@ def spark_dev_tag(self, e: dict) -> str: ) args = arg_parser.parse_args() - bm = VersionCompatibilityMatrix(args.versions_matrix_path, args.git_branch) - #bm = VersionCompatibilityMatrix(".build/.versions.yml", "main") + vcm = VersionCompatibilityMatrix(args.versions_matrix_path, args.git_branch) + #vcm = VersionCompatibilityMatrix(".build/.versions.yml", "main") #with open(os.environ['GITHUB_OUTPUT'], 'a') as fh: - # print(f"spark_matrix={json.dumps(bm.generate_matrix())}", file=fh) - (spark_matrix, python_version) = bm.generate_matrix() + # print(f"spark_matrix={json.dumps(vcm.generate_matrix())}", file=fh) + (spark_matrix, python_version) = vcm.generate_matrix() assert spark_matrix, ("The resulting build matrix was empty. Please, review your configuration '.build/.versions.yml'") print(f"spark={json.dumps(spark_matrix)}") print(f"python={json.dumps(python_version)}") diff --git a/python/okdp/extension/tagging/__init__.py b/python/okdp/extension/tagging/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/python/src/extension/tagging/apply_tags.py b/python/okdp/extension/tagging/apply_tags.py similarity index 96% rename from python/src/extension/tagging/apply_tags.py rename to python/okdp/extension/tagging/apply_tags.py index 3de58a2..524c238 100755 --- a/python/src/extension/tagging/apply_tags.py +++ b/python/okdp/extension/tagging/apply_tags.py @@ -12,7 +12,7 @@ import plumbum from tagging.docker_runner import DockerRunner -from extension.tagging.get_taggers_and_manifests import get_taggers_and_manifests +from okdp.extension.tagging.get_taggers_and_manifests import get_taggers_and_manifests docker = plumbum.local["docker"] diff --git a/python/src/extension/tagging/get_taggers_and_manifests.py b/python/okdp/extension/tagging/get_taggers_and_manifests.py similarity index 92% rename from python/src/extension/tagging/get_taggers_and_manifests.py rename to python/okdp/extension/tagging/get_taggers_and_manifests.py index c127d25..509427c 100644 --- a/python/src/extension/tagging/get_taggers_and_manifests.py +++ b/python/okdp/extension/tagging/get_taggers_and_manifests.py @@ -8,7 +8,7 @@ from typing import Optional -from extension.tagging.images_hierarchy import ALL_IMAGES +from okdp.extension.tagging.images_hierarchy import ALL_IMAGES from tagging.manifests import ManifestInterface from tagging.taggers import TaggerInterface diff --git a/python/src/extension/tagging/images_hierarchy.py b/python/okdp/extension/tagging/images_hierarchy.py similarity index 99% rename from python/src/extension/tagging/images_hierarchy.py rename to python/okdp/extension/tagging/images_hierarchy.py index 9050874..a92f21d 100644 --- a/python/src/extension/tagging/images_hierarchy.py +++ b/python/okdp/extension/tagging/images_hierarchy.py @@ -10,7 +10,7 @@ from dataclasses import dataclass, field from typing import Optional -from extension.tagging.taggers import ( +from okdp.extension.tagging.taggers import ( JavaMajorVersionTagger, JavaVersionTagger, LongTagger, diff --git a/python/src/extension/tagging/taggers.py b/python/okdp/extension/tagging/taggers.py similarity index 100% rename from python/src/extension/tagging/taggers.py rename to python/okdp/extension/tagging/taggers.py diff --git a/python/src/patch/README.md b/python/okdp/patch/README.md similarity index 100% rename from python/src/patch/README.md rename to python/okdp/patch/README.md diff --git a/python/src/patch/tests/docker-stacks-foundation/test_python_version.py b/python/okdp/patch/tests/docker-stacks-foundation/test_python_version.py similarity index 100% rename from python/src/patch/tests/docker-stacks-foundation/test_python_version.py rename to python/okdp/patch/tests/docker-stacks-foundation/test_python_version.py diff --git a/python/src/patch/tests/run_tests.py b/python/okdp/patch/tests/run_tests.py similarity index 100% rename from python/src/patch/tests/run_tests.py rename to python/okdp/patch/tests/run_tests.py diff --git a/python/tests/__init__.py b/python/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/python/tests/extension/__init__.py b/python/tests/extension/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/python/tests/extension/matrix/__init__.py b/python/tests/extension/matrix/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/python/tests/extension/matrix/conftest.py b/python/tests/extension/matrix/conftest.py new file mode 100644 index 0000000..7f9da4e --- /dev/null +++ b/python/tests/extension/matrix/conftest.py @@ -0,0 +1,49 @@ +import json +import pytest +from okdp.extension.matrix.version_compatibility_matrix import VersionCompatibilityMatrix # type: ignore + +class MockedVersionCompatibilityMatrix(VersionCompatibilityMatrix): + def __init__(self, compatibility_matrix: str, build_matrix: str, git_branch: str): + self.compatibility_matrix = compatibility_matrix + self.build_matrix = build_matrix + self.git_branch = git_branch + +def to_dict(str_as_json: str) -> list[dict]: + return json.loads(str_as_json) + +@pytest.fixture(scope="module") +def version_compatibility_matrix_data(): + return [ + {'python_version': ['3.9'], + 'spark_version': ['3.2.1', '3.2.2', '3.2.3', '3.2.4'], + 'java_version': ['11'], + 'scala_version': ['2.12', '2.13'], + 'hadoop_version': ['3.2'], + 'spark_download_url': ['https://archive.apache.org/dist/spark/'] + }, + {'python_version': ['3.10'], + 'spark_version': ['3.3.1', '3.3.2', '3.3.3', '3.3.4'], + 'java_version': ['17'], + 'scala_version': ['2.12', '2.13'], + 'hadoop_version': ['3'], + 'spark_download_url': ['https://archive.apache.org/dist/spark/'] + }, + {'python_version': ['3.11'], + 'spark_version': ['3.4.1', '3.4.2'], + 'java_version': ['17'], + 'scala_version': ['2.12', '2.13'], + 'hadoop_version': ['3'], + 'spark_download_url': ['https://archive.apache.org/dist/spark/'] + }, + {'python_version': ['3.11'], + 'spark_version': ['3.5.0'], + 'java_version': ['17', '21'], + 'scala_version': ['2.12', '2.13'], + 'hadoop_version': ['3'], + 'spark_download_url': ['https://archive.apache.org/dist/spark/'] + } + ] + + + + diff --git a/python/tests/extension/matrix/resources/expected_build_matrix_empty.json b/python/tests/extension/matrix/resources/expected_build_matrix_empty.json new file mode 100644 index 0000000..084ecb8 --- /dev/null +++ b/python/tests/extension/matrix/resources/expected_build_matrix_empty.json @@ -0,0 +1,242 @@ +[ + { + "python_version": "3.10", + "spark_version": "3.3.1", + "java_version": "17", + "scala_version": "", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.3.1-python3.10-java17-scala2.12-main-latest", + "python_dev_tag": "python3.10-main-latest" + }, + { + "python_version": "3.10", + "spark_version": "3.3.1", + "java_version": "17", + "scala_version": "2.13", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.3.1-python3.10-java17-scala2.13-main-latest", + "python_dev_tag": "python3.10-main-latest" + }, + { + "python_version": "3.10", + "spark_version": "3.3.2", + "java_version": "17", + "scala_version": "", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.3.2-python3.10-java17-scala2.12-main-latest", + "python_dev_tag": "python3.10-main-latest" + }, + { + "python_version": "3.10", + "spark_version": "3.3.2", + "java_version": "17", + "scala_version": "2.13", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.3.2-python3.10-java17-scala2.13-main-latest", + "python_dev_tag": "python3.10-main-latest" + }, + { + "python_version": "3.10", + "spark_version": "3.3.3", + "java_version": "17", + "scala_version": "", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.3.3-python3.10-java17-scala2.12-main-latest", + "python_dev_tag": "python3.10-main-latest" + }, + { + "python_version": "3.10", + "spark_version": "3.3.3", + "java_version": "17", + "scala_version": "2.13", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.3.3-python3.10-java17-scala2.13-main-latest", + "python_dev_tag": "python3.10-main-latest" + }, + { + "python_version": "3.10", + "spark_version": "3.3.4", + "java_version": "17", + "scala_version": "", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.3.4-python3.10-java17-scala2.12-main-latest", + "python_dev_tag": "python3.10-main-latest" + }, + { + "python_version": "3.10", + "spark_version": "3.3.4", + "java_version": "17", + "scala_version": "2.13", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.3.4-python3.10-java17-scala2.13-main-latest", + "python_dev_tag": "python3.10-main-latest" + }, + { + "python_version": "3.11", + "spark_version": "3.5.0", + "java_version": "17", + "scala_version": "", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.5.0-python3.11-java17-scala2.12-main-latest", + "python_dev_tag": "python3.11-main-latest" + }, + { + "python_version": "3.11", + "spark_version": "3.5.0", + "java_version": "17", + "scala_version": "2.13", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.5.0-python3.11-java17-scala2.13-main-latest", + "python_dev_tag": "python3.11-main-latest" + }, + { + "python_version": "3.11", + "spark_version": "3.5.0", + "java_version": "21", + "scala_version": "", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.5.0-python3.11-java21-scala2.12-main-latest", + "python_dev_tag": "python3.11-main-latest" + }, + { + "python_version": "3.11", + "spark_version": "3.5.0", + "java_version": "21", + "scala_version": "2.13", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.5.0-python3.11-java21-scala2.13-main-latest", + "python_dev_tag": "python3.11-main-latest" + }, + { + "python_version": "3.11", + "spark_version": "3.4.1", + "java_version": "17", + "scala_version": "", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.4.1-python3.11-java17-scala2.12-main-latest", + "python_dev_tag": "python3.11-main-latest" + }, + { + "python_version": "3.11", + "spark_version": "3.4.1", + "java_version": "17", + "scala_version": "2.13", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.4.1-python3.11-java17-scala2.13-main-latest", + "python_dev_tag": "python3.11-main-latest" + }, + { + "python_version": "3.11", + "spark_version": "3.4.2", + "java_version": "17", + "scala_version": "", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.4.2-python3.11-java17-scala2.12-main-latest", + "python_dev_tag": "python3.11-main-latest" + }, + { + "python_version": "3.11", + "spark_version": "3.4.2", + "java_version": "17", + "scala_version": "2.13", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.4.2-python3.11-java17-scala2.13-main-latest", + "python_dev_tag": "python3.11-main-latest" + }, + { + "python_version": "3.9", + "spark_version": "3.2.1", + "java_version": "11", + "scala_version": "", + "hadoop_version": "3.2", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.2.1-python3.9-java11-scala2.12-main-latest", + "python_dev_tag": "python3.9-main-latest" + }, + { + "python_version": "3.9", + "spark_version": "3.2.1", + "java_version": "11", + "scala_version": "2.13", + "hadoop_version": "3.2", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.2.1-python3.9-java11-scala2.13-main-latest", + "python_dev_tag": "python3.9-main-latest" + }, + { + "python_version": "3.9", + "spark_version": "3.2.2", + "java_version": "11", + "scala_version": "", + "hadoop_version": "3.2", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.2.2-python3.9-java11-scala2.12-main-latest", + "python_dev_tag": "python3.9-main-latest" + }, + { + "python_version": "3.9", + "spark_version": "3.2.2", + "java_version": "11", + "scala_version": "2.13", + "hadoop_version": "3.2", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.2.2-python3.9-java11-scala2.13-main-latest", + "python_dev_tag": "python3.9-main-latest" + }, + { + "python_version": "3.9", + "spark_version": "3.2.3", + "java_version": "11", + "scala_version": "", + "hadoop_version": "3.2", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.2.3-python3.9-java11-scala2.12-main-latest", + "python_dev_tag": "python3.9-main-latest" + }, + { + "python_version": "3.9", + "spark_version": "3.2.3", + "java_version": "11", + "scala_version": "2.13", + "hadoop_version": "3.2", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.2.3-python3.9-java11-scala2.13-main-latest", + "python_dev_tag": "python3.9-main-latest" + }, + { + "python_version": "3.9", + "spark_version": "3.2.4", + "java_version": "11", + "scala_version": "", + "hadoop_version": "3.2", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.2.4-python3.9-java11-scala2.12-main-latest", + "python_dev_tag": "python3.9-main-latest" + }, + { + "python_version": "3.9", + "spark_version": "3.2.4", + "java_version": "11", + "scala_version": "2.13", + "hadoop_version": "3.2", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.2.4-python3.9-java11-scala2.13-main-latest", + "python_dev_tag": "python3.9-main-latest" + } +] \ No newline at end of file diff --git a/python/tests/extension/matrix/test_version_compatibility_matrix.py b/python/tests/extension/matrix/test_version_compatibility_matrix.py new file mode 100644 index 0000000..1fe19b4 --- /dev/null +++ b/python/tests/extension/matrix/test_version_compatibility_matrix.py @@ -0,0 +1,168 @@ +from tests.extension.matrix.conftest import MockedVersionCompatibilityMatrix, to_dict +from okdp.extension.matrix.utils.matrix_utils import group_versions_by +from okdp.extension.matrix.utils.matrix_utils import group_on +from okdp.extension.matrix.version_compatibility_matrix import VersionCompatibilityMatrix + +def test_group_versions_by( + version_compatibility_matrix_data: list[dict], +) -> None: + # Given: version_compatibility_matrix_data + # Expected: + expected = """[ + { + "python_version": ["3.10"], + "spark_version": ["3.3.1","3.3.2","3.3.3","3.3.4"], + "java_version": ["17"], + "scala_version": ["2.12","2.13"], + "hadoop_version": ["3"], + "spark_download_url": ["https://archive.apache.org/dist/spark/"] + },{ + "python_version": ["3.11"], + "spark_version": ["3.5.0"], + "java_version": ["17","21"], + "scala_version": ["2.12","2.13"], + "hadoop_version": ["3"], + "spark_download_url": ["https://archive.apache.org/dist/spark/"] + },{ + "python_version": ["3.11"], + "spark_version": ["3.4.1","3.4.2"], + "java_version": ["17"], + "scala_version": ["2.12","2.13"], + "hadoop_version": ["3"], + "spark_download_url": ["https://archive.apache.org/dist/spark/"] + },{ + "python_version": ["3.9"], + "spark_version": [ "3.2.1", "3.2.2", "3.2.3", "3.2.4"], + "java_version": ["11"], + "scala_version": ["2.12", "2.13"], + "hadoop_version": ["3.2"], + "spark_download_url": ["https://archive.apache.org/dist/spark/"] + } + ] + """ + assert group_versions_by(version_compatibility_matrix_data, group_on=group_on) == to_dict(expected) + +def test_build_matrix_empty( + version_compatibility_matrix_data: list[dict], +) -> None: + # Given: version_compatibility_matrix_data + version_compatibility_matrix = version_compatibility_matrix_data + build_matrix = {} + + # When: + vcm = MockedVersionCompatibilityMatrix(compatibility_matrix = version_compatibility_matrix, + build_matrix = build_matrix, + git_branch="main") + vcm._normalize_values_() + (spark_matrix, python_version) = vcm.generate_matrix() + + # Then: check the number of combinations when the build_matrix is empty + expected_nb_combinations = 24 + actual_nb_combinations = len(spark_matrix) + assert actual_nb_combinations == expected_nb_combinations, f"The number of elements should be {expected_nb_combinations}, got {actual_nb_combinations}" + + # Then: check the expected combinations when the build_matrix is empty + with open("python/tests/extension/matrix/resources/expected_build_matrix_empty.json", 'r') as file: + expected_build_matrix_empty = file.read() + + assert to_dict(expected_build_matrix_empty) == spark_matrix + +def test_filter_spark_version( + version_compatibility_matrix_data: list[dict], +) -> None: + # Given: version_compatibility_matrix_data + version_compatibility_matrix = version_compatibility_matrix_data + build_matrix = {"spark_version": "3.2.4"} + + # When: + vcm = MockedVersionCompatibilityMatrix(compatibility_matrix = version_compatibility_matrix, + build_matrix = build_matrix, + git_branch="main") + vcm._normalize_values_() + (spark_matrix, python_version) = vcm.generate_matrix() + + # Then: check the number of combinations when the build_matrix is empty + expected_nb_combinations = 2 + actual_nb_combinations = len(spark_matrix) + expected_test_filter_spark_version = """[ + { + "python_version": "3.9", + "spark_version": "3.2.4", + "java_version": "11", + "scala_version": "", + "hadoop_version": "3.2", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.2.4-python3.9-java11-scala2.12-main-latest", + "python_dev_tag": "python3.9-main-latest" + }, + { + "python_version": "3.9", + "spark_version": "3.2.4", + "java_version": "11", + "scala_version": "2.13", + "hadoop_version": "3.2", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.2.4-python3.9-java11-scala2.13-main-latest", + "python_dev_tag": "python3.9-main-latest" + } + ]""" + assert actual_nb_combinations == expected_nb_combinations, f"The number of elements should be {expected_nb_combinations}, got {actual_nb_combinations}" + + assert spark_matrix == to_dict(expected_test_filter_spark_version) + assert python_version == to_dict("""[{"python_version": "3.9", "python_dev_tag": "python3.9-main-latest"}]""") + +def test_filter_spark_version_scala_version( + version_compatibility_matrix_data: list[dict], +) -> None: + # Given: version_compatibility_matrix_data + version_compatibility_matrix = version_compatibility_matrix_data + build_matrix = {"spark_version": "3.2.4", "scala_version": "2.13"} + + # When: + vcm = MockedVersionCompatibilityMatrix(compatibility_matrix = version_compatibility_matrix, + build_matrix = build_matrix, + git_branch="main") + vcm._normalize_values_() + (spark_matrix, python_version) = vcm.generate_matrix() + + # Then: check the number of combinations when the build_matrix is empty + expected_nb_combinations = 1 + actual_nb_combinations = len(spark_matrix) + expected_test_filter_spark_version = """[ + { + "python_version": "3.9", + "spark_version": "3.2.4", + "java_version": "11", + "scala_version": "2.13", + "hadoop_version": "3.2", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.2.4-python3.9-java11-scala2.13-main-latest", + "python_dev_tag": "python3.9-main-latest" + } + ]""" + assert actual_nb_combinations == expected_nb_combinations, f"The number of elements should be {expected_nb_combinations}, got {actual_nb_combinations}" + + assert spark_matrix == to_dict(expected_test_filter_spark_version) + assert python_version == to_dict("""[{"python_version": "3.9", "python_dev_tag": "python3.9-main-latest"}]""") + +def test_filter_wrong_version( + version_compatibility_matrix_data: list[dict], +) -> None: + # Given: version_compatibility_matrix_data + version_compatibility_matrix = version_compatibility_matrix_data + # The python_version is not supported by the compatibilty matrix + build_matrix = {"python_version": "3.7"} + + # When: + vcm = MockedVersionCompatibilityMatrix(compatibility_matrix = version_compatibility_matrix, + build_matrix = build_matrix, + git_branch="main") + vcm._normalize_values_() + (spark_matrix, python_version) = vcm.generate_matrix() + + # Then: check the number of combinations when the build_matrix is empty + expected_nb_combinations = 0 + actual_nb_combinations = len(spark_matrix) + assert actual_nb_combinations == expected_nb_combinations, f"spark_matrix: The number of elements should be {expected_nb_combinations}, got {actual_nb_combinations}" + assert len(python_version) == expected_nb_combinations, f"python_version: The number of elements should be {expected_nb_combinations}, got {actual_nb_combinations}" + diff --git a/python/tests/pytest.ini b/python/tests/pytest.ini new file mode 100644 index 0000000..d61d029 --- /dev/null +++ b/python/tests/pytest.ini @@ -0,0 +1,2 @@ +[pytest] +xfail_strict=true From 74806b75946dc53430caca3a77990ad63de3a1fc Mon Sep 17 00:00:00 2001 From: Idir Izitounene Date: Tue, 6 Feb 2024 11:22:13 +0100 Subject: [PATCH 10/11] Build/Test - Add new test with multiple filters and rename build workflows --- .build/.versions.yml | 2 +- .../{build-base.yml => build-test-base.yml} | 0 ...science.yml => build-test-datascience.yml} | 0 .../{build-spark.yml => build-test-spark.yml} | 0 .github/workflows/main.yml | 14 +- .github/workflows/unit-tests.yml | 2 +- README.md | 137 ++++++++++++++++-- doc/_images/build-pipeline.png | Bin 0 -> 61866 bytes .../test_version_compatibility_matrix.py | 82 ++++++++++- 9 files changed, 207 insertions(+), 30 deletions(-) rename .github/workflows/{build-base.yml => build-test-base.yml} (100%) rename .github/workflows/{build-datascience.yml => build-test-datascience.yml} (100%) rename .github/workflows/{build-spark.yml => build-test-spark.yml} (100%) create mode 100644 doc/_images/build-pipeline.png diff --git a/.build/.versions.yml b/.build/.versions.yml index b8d9345..b7282a0 100644 --- a/.build/.versions.yml +++ b/.build/.versions.yml @@ -35,7 +35,7 @@ compatibility-matrix: scala_version: [2.12, 2.13] hadoop_version: 3 spark_download_url: https://archive.apache.org/dist/spark/ -### Ovveride the matrix above by providing the versions to build +### Override the matrix above by providing the versions to build ### 1- The build-matrix is empty: build with all possible combintations ### 2- Override specific versions: build with all possible combinations which are compatible with that specific versions ### 3- The versions not present on compatibility-matrix are ignored diff --git a/.github/workflows/build-base.yml b/.github/workflows/build-test-base.yml similarity index 100% rename from .github/workflows/build-base.yml rename to .github/workflows/build-test-base.yml diff --git a/.github/workflows/build-datascience.yml b/.github/workflows/build-test-datascience.yml similarity index 100% rename from .github/workflows/build-datascience.yml rename to .github/workflows/build-test-datascience.yml diff --git a/.github/workflows/build-spark.yml b/.github/workflows/build-test-spark.yml similarity index 100% rename from .github/workflows/build-spark.yml rename to .github/workflows/build-test-spark.yml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index dad509d..8b3eb04 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -25,7 +25,7 @@ on: push: branches: - - build-pipeline + - main paths: - ".github/workflows/main.yml" - ".github/workflows/build-base.yml" @@ -95,13 +95,13 @@ jobs: needs: [run-unit-tests] build-base: - name: build-base (python-${{ matrix.python.python_version }}) + name: build-test-base (python-${{ matrix.python.python_version }}) strategy: # 3 Jobs in //, the base jobs run in sequential max-parallel: 3 matrix: python: ${{ fromJson(needs.build-version-compatibility-matrix.outputs.python) }} - uses: ./.github/workflows/build-base.yml + uses: ./.github/workflows/build-test-base.yml with: python_version: ${{ matrix.python.python_version }} python_dev_tag: ${{ matrix.python.python_dev_tag }} @@ -113,13 +113,13 @@ jobs: needs: [build-version-compatibility-matrix] build-datascience: - name: build-datascience (python-${{ matrix.python.python_version }}) + name: build-test-datascience (python-${{ matrix.python.python_version }}) strategy: # 1 matrix call = +2 jobs in // (check the number here build-datascience.yml) max-parallel: 1 matrix: python: ${{ fromJson(needs.build-version-compatibility-matrix.outputs.python) }} - uses: ./.github/workflows/build-datascience.yml + uses: ./.github/workflows/build-test-datascience.yml with: python_dev_tag: ${{ matrix.python.python_dev_tag }} registry: ${{ vars.REGISTRY || 'ghcr.io' }} @@ -130,13 +130,13 @@ jobs: needs: [build-version-compatibility-matrix, build-base] build-spark: - name: build-spark (python-${{ matrix.spark.python_version }}) + name: build-test-spark (python-${{ matrix.spark.python_version }}) strategy: # 2 jobs in // max-parallel: 2 matrix: spark: ${{ fromJson(needs.build-version-compatibility-matrix.outputs.spark) }} - uses: ./.github/workflows/build-spark.yml + uses: ./.github/workflows/build-test-spark.yml with: spark_download_url: ${{ matrix.spark.spark_download_url }} python_version: ${{ matrix.spark.python_version }} diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml index a85fe29..8c07a70 100644 --- a/.github/workflows/unit-tests.yml +++ b/.github/workflows/unit-tests.yml @@ -22,7 +22,7 @@ jobs: uses: ./docker-stacks/.github/actions/create-dev-env - name: Run unit tests - run: pytest python/tests -v + run: pytest python/tests -v --color=yes shell: bash diff --git a/README.md b/README.md index 9649b72..8bcf1ed 100644 --- a/README.md +++ b/README.md @@ -1,26 +1,131 @@ -# kdp-docker-stacks +# OKDP Jupyter Images -kdp jupyter images based on https://github.com/jupyter/docker-stacks +[![Build, test, tag, and push jupyter images](https://github.com/OKDP/jupyterlab-docker/actions/workflows/main.yml/badge.svg)](https://github.com/OKDP/jupyterlab-docker/actions/workflows/main.yml) +OKDP jupyter docker images based on [jupyter docker-stacks](https://github.com/jupyter/docker-stacks) source dockerfiles. It includes (read only copy) [jupyter docker-stacks](https://github.com/jupyter/docker-stacks) repository as a [git-subtree](https://www.atlassian.com/git/tutorials/git-subtree) sub project. -# Extension +The project leverages the features provided by [jupyter docker-stacks](https://github.com/jupyter/docker-stacks): +- Build from the original [source docker files](docker-stacks/images) +- Customize the images by using docker ```build-arg``` build arguments +- Run the original [tests](docker-stacks/tests) at every pipeline trigger +The project provides an up to date jupyter lab images especially for pyspark. -# Initial setup +# Images build workflow +## Build/Test + +The [main](.github/workflows/main.yml) build pipeline contains 6 main reusable workflows: + +1. [build-test-base](.github/workflows/build-test-base.yml): docker-stacks-foundation, base-notebook, minimal-notebook, scipy-notebook +2. [build-test-datascience](.github/workflows/build-test-datascience.yml): r-notebook, julia-notebook, tensorflow-notebook, pytorch-notebook +3. [build-test-spark](.github/workflows/build-test-spark.yml): pyspark-notebook, all-spark-notebook +4. [tag-push](.github/workflows/docker-tag-push.yml): push the built images to the container registry (main branch only) +5. [auto-rerun](.github/workflows/auto-rerun.yml): partially re-run jobs in case of failures (github runner issues/main branch only) +6. [unit-tests](.github/workflows/unit-tests.yml): run the unit tests (okdp extension) at every pipeline trigger + +![build pipeline](doc/_images/build-pipeline.png) + +The build is based on the [version compatibility matrix](.build/.versions.yml). + +The [build-matrix](.build/.versions.yml#L42) section defines the components versions to build. It behaves like a filter of the parent [version compatibility matrix](.build/.versions.yml) to limit the versions combintations to build. The build process ensures only the compatible versions are built: + +For example, the following build-matrix: + +```yaml +build-matrix: + python_version: ['3.9', '3.10', '3.11'] + spark_version: [3.2.4, 3.3.4, 3.4.2, 3.5.0] + java_version: [11, 17] + scala_version: [2.12] +``` + +Will build the following versions combinations in regards to [compatibility-matrix](.build/.versions.yml#5) section: +- spark3.3.4-python3.10-java17-scala2.12 +- spark3.5.0-python3.11-java17-scala2.12 +- spark3.4.2-python3.11-java17-scala2.12 +- spark3.2.4-python3.9-java11-scala2.12 + +By default, if no filter is specified: + +```yaml +build-matrix: +``` + +All compatible versions combinations are built. + +Finally, all the images are tested against the original [tests](docker-stacks/tests) at every pipeline trigger + +## Push + +Development images with tags ```--latest``` suffix (ex.: spark3.2.4-python3.9-java11-scala2.12--latest) are produced at every pipeline run regardless of the git branch (main or not). + +The [official images](#tagging) are pushed to the [container registry](https://github.com/orgs/OKDP/packages) when: + +1. The workflow is triggered on the main branch only and +2. The [tests](#build/test) are completed successfully + +This prevents pull requests or developement branchs to push the official images before they are reviewed or tested. It also provides the flexibility to test against developement images ```--latest``` before they are officially pushed. + +## Tagging + +The project builds the images with a long format tags. Each tag combines multiple compatible versions combinations. + +There are multiple tags levels and the format to use is depending on your convenience in term of stability and reproducibility. + +Here are some examples: + +### scipy-notebook: +- python-3.11-2024-02-06 +- python-3.11.7-2024-02-06 +- python-3.11.7-hub-4.0.2-lab-4.1.0 +- python-3.11.7-hub-4.0.2-lab-4.1.0-2024-02-06 + +### datascience-notebook: +- python-3.9-2024-02-06 +- python-3.9.18-2024-02-06 +- python-3.9.18-hub-4.0.2-lab-4.1.0 +- python-3.9.18-hub-4.0.2-lab-4.1.0-2024-02-06 +- python-3.9.18-r-4.3.2-julia-1.10.0-2024-02-06 +- python-3.9.18-r-4.3.2-julia-1.10.0-hub-4.0.2-lab-4.1.0 +- python-3.9.18-r-4.3.2-julia-1.10.0-hub-4.0.2-lab-4.1.0-2024-02-06 + +### pyspark-notebook: +- spark-3.5.0-python-3.11-java-17-scala-2.12 +- spark-3.5.0-python-3.11-java-17-scala-2.12-2024-02-06 +- spark-3.5.0-python-3.11.7-java-17.0.9-scala-2.12.18-hub-4.0.2-lab-4.1.0 +- spark-3.5.0-python-3.11.7-java-17.0.9-scala-2.12.18-hub-4.0.2-lab-4.1.0-2024-02-06 +- spark-3.5.0-python-3.11.7-r-4.3.2-java-17.0.9-scala-2.12.18-hub-4.0.2-lab-4.1.0 +- spark-3.5.0-python-3.11.7-r-4.3.2-java-17.0.9-scala-2.12.18-hub-4.0.2-lab-4.1.0-2024-02-06 + +Please, check the [container registry](https://github.com/orgs/OKDP/packages) for more images and tags. + +# Build locally with Act + +[Act](https://github.com/nektos/act) can be used to build and test locally. + +Here is an example command: ```shell -git remote add docker-stacks https://github.com/jupyter/docker-stacks.git -git subtree add --prefix=docker-stacks --squash docker-stacks main +$ act --container-architecture linux/amd64 \ + -W .github/workflows/main.yml \ + --env ACT_SKIP_TESTS= \ + --var REGISTRY=ghcr.io \ + --secret REGISTRY_USERNAME= \ + --secret REGISTRY_ROBOT_TOKEN= + --rm ``` +set the option ```--container-architecture linux/amd64``` if you are running locally with Apple's M1/M2 chips. + +For more information: + ```shell -act --container-architecture linux/amd64 \ - -W .github/workflows/docker.yml \ - --artifact-server-path /tmp/act/artifacts \ - --env ACT_SKIP_TESTS= \ - --env PUSH_TO_REGISTRY=true \ - --env REGISTRY=ghcr.io \ - --secret REGISTRY_USERNAME= \ - --secret REGISTRY_ROBOT_TOKEN= - --rm -``` \ No newline at end of file +$ act --help +``` + +# OKDP custom extensions + +1. [Tagging extension](python/okdp/extension/tagging) is based on the original [jupyter docker-stacks](docker-stacks/tagging) source files +2. [Patchs](python/okdp/patch/README.md) patchs the original [jupyter docker-stacks](docker-stacks/tests) in order to run the tests +3. [Version compatibility matrix](python/okdp/extension/matrix) to generate all the compatible versions combintations for pyspark +4. [Unit tests](python/tests) in order to test okdp extension at every pipeline run \ No newline at end of file diff --git a/doc/_images/build-pipeline.png b/doc/_images/build-pipeline.png new file mode 100644 index 0000000000000000000000000000000000000000..466bde37a4f8ae9a0ac3e2948756f19e26c0f0aa GIT binary patch literal 61866 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 None: # Given: version_compatibility_matrix_data @@ -67,7 +67,7 @@ def test_build_matrix_empty( assert to_dict(expected_build_matrix_empty) == spark_matrix -def test_filter_spark_version( +def test_filter_by_spark_version( version_compatibility_matrix_data: list[dict], ) -> None: # Given: version_compatibility_matrix_data @@ -111,7 +111,7 @@ def test_filter_spark_version( assert spark_matrix == to_dict(expected_test_filter_spark_version) assert python_version == to_dict("""[{"python_version": "3.9", "python_dev_tag": "python3.9-main-latest"}]""") -def test_filter_spark_version_scala_version( +def test_filter_by_spark_version_and_scala_version( version_compatibility_matrix_data: list[dict], ) -> None: # Given: version_compatibility_matrix_data @@ -145,7 +145,80 @@ def test_filter_spark_version_scala_version( assert spark_matrix == to_dict(expected_test_filter_spark_version) assert python_version == to_dict("""[{"python_version": "3.9", "python_dev_tag": "python3.9-main-latest"}]""") -def test_filter_wrong_version( +def test_filter_by_multiple_versions( + version_compatibility_matrix_data: list[dict], +) -> None: + # Given: version_compatibility_matrix_data + version_compatibility_matrix = version_compatibility_matrix_data + # The python_version is not supported by the compatibilty matrix + build_matrix = { + "python_version": ["3.9", "3.10", "3.11"], + "spark_version": ["3.2.4", "3.3.4", "3.4.2", "3.5.0"], + "java_version": [11, 17], + "scala_version": [2.12] + } + + # When: + vcm = MockedVersionCompatibilityMatrix(compatibility_matrix = version_compatibility_matrix, + build_matrix = build_matrix, + git_branch="main") + vcm._normalize_values_() + (spark_matrix, python_version) = vcm.generate_matrix() + + # Then: check the number of combinations when the build_matrix is empty + expected_nb_combinations = 4 + actual_nb_combinations = len(spark_matrix) + assert actual_nb_combinations == expected_nb_combinations, f"spark_matrix: The number of elements should be {expected_nb_combinations}, got {actual_nb_combinations}" + + assert spark_matrix == to_dict("""[ + { + "python_version": "3.10", + "spark_version": "3.3.4", + "java_version": "17", + "scala_version": "", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.3.4-python3.10-java17-scala2.12-main-latest", + "python_dev_tag": "python3.10-main-latest" + }, + { + "python_version": "3.11", + "spark_version": "3.5.0", + "java_version": "17", + "scala_version": "", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.5.0-python3.11-java17-scala2.12-main-latest", + "python_dev_tag": "python3.11-main-latest" + }, + { + "python_version": "3.11", + "spark_version": "3.4.2", + "java_version": "17", + "scala_version": "", + "hadoop_version": "3", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.4.2-python3.11-java17-scala2.12-main-latest", + "python_dev_tag": "python3.11-main-latest" + }, + { + "python_version": "3.9", + "spark_version": "3.2.4", + "java_version": "11", + "scala_version": "", + "hadoop_version": "3.2", + "spark_download_url": "https://archive.apache.org/dist/spark/", + "spark_dev_tag": "spark3.2.4-python3.9-java11-scala2.12-main-latest", + "python_dev_tag": "python3.9-main-latest" + } + ]""") + assert python_version == to_dict("""[ + {"python_version": "3.10", "python_dev_tag": "python3.10-main-latest"}, + {"python_version": "3.11", "python_dev_tag": "python3.11-main-latest"}, + {"python_version": "3.9", "python_dev_tag": "python3.9-main-latest"} + ]""") + +def test_filter_by_wrong_version( version_compatibility_matrix_data: list[dict], ) -> None: # Given: version_compatibility_matrix_data @@ -165,4 +238,3 @@ def test_filter_wrong_version( actual_nb_combinations = len(spark_matrix) assert actual_nb_combinations == expected_nb_combinations, f"spark_matrix: The number of elements should be {expected_nb_combinations}, got {actual_nb_combinations}" assert len(python_version) == expected_nb_combinations, f"python_version: The number of elements should be {expected_nb_combinations}, got {actual_nb_combinations}" - From c04750db82c620542bb818cc810a962e49b2e2c5 Mon Sep 17 00:00:00 2001 From: SergeAlexandre Date: Wed, 7 Feb 2024 21:15:59 +0100 Subject: [PATCH 11/11] Add .vscode in .gitignore --- .gitignore | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.gitignore b/.gitignore index 1bfe270..f799eee 100644 --- a/.gitignore +++ b/.gitignore @@ -191,3 +191,7 @@ bin/ ### Mac OS ### .DS_Store + +### vscode ### +.vscode/ +

    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�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 literal 0 HcmV?d00001 diff --git a/docs/_static/contributing/stacks/github-secret-token.png b/docs/_static/contributing/stacks/github-secret-token.png new file mode 100644 index 0000000000000000000000000000000000000000..5901c26473709acadd15ef228bc6b9618e32e822 GIT binary patch literal 301323 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∾49(f5mk%=G7(r<(UCL4>WA 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 z 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