Using code envs with containerized execution

Container-based execution is compatible with managed code environments for:

  • Python recipes

  • R recipes

  • Custom in-memory machine learning models

  • Deep learning models

  • Python notebooks

  • R notebooks

To make a code environment usable for containerized execution, you must select the containerized execution configuration(s) for which the code environment Docker image must be available. This setting is configured in the “Containerized execution” tab of the code env settings.


Container-based execution is not compatible with:

  • non-managed code environments, i.e. those that have deployment type “Non-managed path” or “Named external Conda env”

  • custom python interpreter from PATH

  • additional PYTHONPATH entries.

  • custom packages manually added to DSS’ builtin environment

Updating code envs

Update a code env from the code env administration page. This causes corresponding Docker images to be built for the code env (one on top of each base image from the selected container configurations). Each time you use this code env and one of the selected container configurations to run a recipe or model, then the corresponding Docker image will be used.


After each upgrade of DSS, you must rebuild all base images and then all code env images. You can rebuild code env images by running ./bin/dssadmin build-container-exec-code-env-images --all.

Likewise, adding a new container execution configuration does not automatically rebuild all code environments that are set to be available for “All container exec configurations”.