Devcontainers

July 14, 2023 — July 19, 2023

Assumed audience:

People who want to do containerization for machine learning research

Figure 1

Apparently there are workflows specialised for exploratory development using containers, which is conventionally style Devcontainers:

A Development Container (or Dev Container for short) allows you to use a container as a full-featured development environment. It can be used to run an application, to separate tools, libraries, or runtimes needed for working with a codebase, and to aid in continuous integration and testing. Dev containers can be run locally or remotely, in a private or public cloud, in a variety of supporting tools and editors.

The Development Containers Specification seeks to find ways to enrich existing formats with common development specific settings, tools, and configuration while still providing a simplified, un-orchestrated single container option – so that they can be used as coding environments or for continuous integration and testing. Beyond the specification’s core metadata, the spec also enables developers to quickly share and reuse container setup steps through Dev Container Features and Templates.

I wonder how much value is added here?

Figure 2: from containers.dev Overview

1 R

Maybe check out a worked example for teaching R: revodavid/devcontainers-r: Materials for the talk “Easy R Tutorials with Dev Containers”.

2 VS Code

3 IntelliJ