From 651ca94e612268a9d35599a11d5b31d6e7e328d2 Mon Sep 17 00:00:00 2001 From: TYLER CARAZA-HARTER <tharter@cs544-tharter.cs.wisc.edu> Date: Thu, 13 Feb 2025 13:30:46 -0600 Subject: [PATCH] starter image --- lec/11-threads/Dockerfile | 14 +++++ lec/11-threads/requirements.txt | 107 ++++++++++++++++++++++++++++++++ 2 files changed, 121 insertions(+) create mode 100644 lec/11-threads/Dockerfile create mode 100644 lec/11-threads/requirements.txt diff --git a/lec/11-threads/Dockerfile b/lec/11-threads/Dockerfile new file mode 100644 index 0000000..ac39d0f --- /dev/null +++ b/lec/11-threads/Dockerfile @@ -0,0 +1,14 @@ +FROM ubuntu:24.04 +RUN apt-get update && apt-get install -y python3 python3-pip curl iproute2 wget unzip software-properties-common +RUN add-apt-repository -y ppa:deadsnakes/ppa && apt-get update && apt-get install -y python3.13-nogil python3.13-dev libffi-dev + +RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py +RUN python3.13-nogil get-pip.py + +COPY requirements.txt /tmp/requirements.txt +RUN python3.13 -m pip install -r /tmp/requirements.txt --break-system-packages +RUN python3.13-nogil -m pip install ipykernel +RUN python3.13-nogil -m ipykernel install --user --name python3.13-nogil --display-name "Python 3.13-nogil" + +# JupyterLab needs GIL, but kernel does not +CMD ["python3.13", "-m", "jupyterlab", "--no-browser", "--ip=0.0.0.0", "--port=300", "--allow-root", "--NotebookApp.token=''"] diff --git a/lec/11-threads/requirements.txt b/lec/11-threads/requirements.txt new file mode 100644 index 0000000..ddd76b9 --- /dev/null +++ b/lec/11-threads/requirements.txt @@ -0,0 +1,107 @@ +anyio==4.8.0 +argon2-cffi==23.1.0 +argon2-cffi-bindings==21.2.0 +arrow==1.3.0 +asttokens==3.0.0 +async-lru==2.0.4 +attrs==25.1.0 +babel==2.17.0 +beautifulsoup4==4.13.3 +bleach==6.2.0 +blinker==1.7.0 +certifi==2025.1.31 +cffi==1.17.1 +charset-normalizer==3.4.1 +comm==0.2.2 +cryptography==41.0.7 +dbus-python==1.3.2 +debugpy==1.8.12 +decorator==5.1.1 +defusedxml==0.7.1 +distro==1.9.0 +distro-info==1.7+build1 +executing==2.2.0 +fastjsonschema==2.21.1 +fqdn==1.5.1 +h11==0.14.0 +httpcore==1.0.7 +httplib2==0.20.4 +httpx==0.28.1 +idna==3.10 +ipykernel==6.29.5 +ipython==8.32.0 +isoduration==20.11.0 +jedi==0.19.2 +Jinja2==3.1.5 +json5==0.10.0 +jsonpointer==3.0.0 +jsonschema==4.23.0 +jsonschema-specifications==2024.10.1 +jupyter-events==0.12.0 +jupyter-lsp==2.2.5 +jupyter_client==8.6.3 +jupyter_core==5.7.2 +jupyter_server==2.15.0 +jupyter_server_terminals==0.5.3 +jupyterlab==4.3.5 +jupyterlab_pygments==0.3.0 +jupyterlab_server==2.27.3 +launchpadlib==1.11.0 +lazr.restfulclient==0.14.6 +lazr.uri==1.0.6 +MarkupSafe==3.0.2 +matplotlib-inline==0.1.7 +mistune==3.1.1 +nbclient==0.10.2 +nbconvert==7.16.6 +nbformat==5.10.4 +nest-asyncio==1.6.0 +notebook_shim==0.2.4 +oauthlib==3.2.2 +overrides==7.7.0 +packaging==24.2 +pandocfilters==1.5.1 +parso==0.8.4 +pexpect==4.9.0 +platformdirs==4.3.6 +prometheus_client==0.21.1 +prompt_toolkit==3.0.50 +psutil==6.1.1 +ptyprocess==0.7.0 +pure_eval==0.2.3 +pycparser==2.22 +Pygments==2.19.1 +PyGObject==3.48.2 +PyJWT==2.7.0 +pyparsing==3.1.1 +python-apt==2.7.7+ubuntu4 +python-dateutil==2.9.0.post0 +python-json-logger==3.2.1 +PyYAML==6.0.2 +pyzmq==26.2.1 +referencing==0.36.2 +requests==2.32.3 +rfc3339-validator==0.1.4 +rfc3986-validator==0.1.1 +rpds-py==0.22.3 +Send2Trash==1.8.3 +setuptools==68.1.2 +six==1.16.0 +sniffio==1.3.1 +soupsieve==2.6 +stack-data==0.6.3 +terminado==0.18.1 +tinycss2==1.4.0 +tornado==6.4.2 +traitlets==5.14.3 +types-python-dateutil==2.9.0.20241206 +typing_extensions==4.12.2 +unattended-upgrades==0.1 +uri-template==1.3.0 +urllib3==2.3.0 +wadllib==1.3.6 +wcwidth==0.2.13 +webcolors==24.11.1 +webencodings==0.5.1 +websocket-client==1.8.0 +wheel==0.42.0 -- GitLab