Skip to main content
The Python version in a compute environment is fixed by its base image. To run a newer version, such as Python 3.14, add Dockerfile instructions to the environment that install it and JupyterLab. Use the uv (pip) instructions or the conda instructions.

Applies to

All deployment types and Domino versions. The installation steps were tested with the Domino Standard Environment (DSE) 6.2.3.
If your environment uses a base image other than DSE 6.2.3, you may need to modify the instructions. Details such as the installed tools (pip, conda), the ubuntu user, and the paths in the examples can differ between images.

Choose uv (pip) or conda

Use the option that matches how your environment already installs packages. The following points can also decide between them:
  • Licensing: Anaconda’s terms of service apply to packages from its defaults channels, and organizations with 200 or more employees need a paid license to use them. Packages from the community conda-forge channel are free. Check which channels your conda installation uses, or use the uv (pip) option, which installs from PyPI.- Access: The build must be able to reach the package source. PyPI and the Anaconda repositories are separate hosts, and your network or internal mirror might allow only one of them. The uv option also downloads the Python 3.14 interpreter itself, so confirm that download is allowed.
  • Rate limits: Anaconda returns an HTTP 429 error when usage of its package repositories exceeds its rate limits, which can fail builds that run often or in parallel. PyPI recommends that heavy users run their own mirror or cache.
  • Compatibility: The conda option upgrades Python inside the existing conda installation, which can change the versions of other conda packages in the environment. The uv option creates a separate virtual environment at /opt/venv and leaves the existing installation untouched.

Upgrade Python

Both options have been tested with JupyterLab workspaces on DSE 6.2.3.
1

Open the environment

Open the compute environment and go to its Dockerfile Instructions.
2

Add the instructions

Add the instructions for the tool you use.
Setting UV_PYTHON_INSTALL_DIR makes every uv command use the same install location. Setting UV_PYTHON_DOWNLOADS=never makes a mismatch fail at build time instead of at workspace start. The uv python install command sets UV_PYTHON_DOWNLOADS=automatic for that one command, because it is the only step that needs to download Python.
Keep the UV_PYTHON_INSTALL_DIR setting. Without it, uv can download a second copy of Python 3.14 into /root/.local/share/uv/python and link the venv to it. The ubuntu user that runs the workspace can’t access /root, so the workspace fails to start with a Permission denied error on /opt/venv/bin/python.
3

Build a new revision

Build a new revision of the environment.
4

Start a new workspace

Start a new workspace from the new revision. Open a terminal and run the following command to confirm the Python version:
The output shows Python 3.14.
If you used the uv option and the workspace fails to start with Permission denied, run the following command in the built image. The path must not resolve under /root/:
If the path is correct, run namei -l /opt/venv/bin/python and look for a directory in the path that the ubuntu user can’t traverse. Also confirm that the workspace runs as the same user ID (UID) as the ubuntu user in the image.
Last modified on October 15, 2026