2 min read

PyData Eindhoven 2022

Eindhoven, The Netherlands — Devcontainer deep dive. Covering the Devcontainers rationale, the new containers.dev specification by the Microsoft team, Linux Docker essentials, mounts, ports, IDE integration and a practical guide on how you can create a Devcontainer for a Python project yourself.
PyData Eindhoven 2022
Jeroen Overschie presenting about Devcontainers at PyData Eindhoven 2022.

Devcontainers are an open-source specification, which allow you to connect your IDE to a running Docker container and develop right inside it. This has numerous advantages. Because the dev environment is now formally defined, it is reproducible. This means others can easily reproduce your dev environment, too! This makes it much easier for others to join in on your project, and stay updated with changes to the environment. 
In this talk, you will learn: why you might want to use a Devcontainer for your project (or when not 😉), what exactly a Devcontainer is, and how you can build one for your Python project 🐍. 

YouTube recording of Jeroen presenting 'How to create a Devcontainer for your Python project 🐳' at PyData Eindhoven 2022 (slides).

Devcontainers have been gaining traction lately. Whereas previously the technology existed only in the umbrella of Visual Studio Code, it is now released as an open specification. Such, multiple IDE's could all use the same standard specification, promoting reusability and standardization. That said, Developers are currently hard at work at pushing the technology to become standardized. Especially for these reasons, this is an exciting time to take a closer look at this new specification, and at what the technology can do for us in general. 

GitHub - godatadriven/python-devcontainer-template: Shows you how to use a Devcontainer for your Python project 🐳♡🐍
Shows you how to use a Devcontainer for your Python project 🐳♡🐍 - godatadriven/python-devcontainer-template

Devcontainer template

How to create a Devcontainer for your Python project 🐳 (on Xebia.com ⧉)
Instead of giving other developers a setup document, let’s make sure we also create formal instructions so we can automatically set up the development environment. Devcontainers let us do exactly this.

Blogpost


PyData Eindhoven (image courtesy of PyData.org)