Back to videos

Building Reproducible Dev Environments with Docker

Graham Gilchrist

Maintaining different software environments to run multiple web projects is a time-consuming task. Have you ever returned to an old project, only to find that you have to reinstall older versions of software before even starting any work? This problem is compounded by developer environments across the team varying in hardware, OS versions, and development software. Docker is a virtualisation-like technology which enables you to run software in a fixed environment, but without the speed problems normally associated with a virtual machine. This enables us to specify versions of project dependencies, server software, tooling and operating systems, storing these alongside the project. Any developer can now run any project in the company very easily, reducing setup time, and freeing you up from troubleshooting system configurations. This talk describes how we have introduced docker and docker-compose at Incuna to package python and front-end projects, saving hours of developer time and stress.



If you’d like to get involved in supporting The Lead Developer, please request a sponsor pack.