## Containerising Christmas ## . ## ## ## == ## ## ## ## ## === /"""""""""""""""""\___/ === ~~~~~~~~~{~~~~~~~~~~~~~~~~~~~~~~~/~~~~~~~~~~~~~~~~~~~~ \______ o __/ \ \ __/ \____\_______/ _ _ _ | | | | (_) __| | _____ _____ ___ _ __ | |_ __ _ _ _ __ ___ _ __ ___ / _` |/ _ \ \ / / __/ _ \| '_ \| __/ _` | | '_ \ / _ \ '__/ __| | (_| | __/\ V / (_| (_) | | | | || (_| | | | | | __/ | \__ \ \__,_|\___| \_/ \___\___/|_| |_|\__\__,_|_|_| |_|\___|_| |___/ --- ## Whoami - Alex Coleman, Research Software Engineer, Research Computing - Support computational researchers across campus - Particular background is in data science using tools like R and Python --- ## What is research computing? - We're a [team](https://arc.leeds.ac.uk/) of RSEs within Central IT - We provide a number of services to researchers including ---- Managing the University High Performance Computing (HPC) system <img src="https://arcdocs.leeds.ac.uk/_images/HPC1-1024x821.jpg" style="width: 600px;"> ---- Provide training for PGRs, postdocs and academics <img src="https://arc.leeds.ac.uk/images/computer_teaching.jpg" style="width: 600px;"> ---- - Provide research software engineering support to researchers - Provide ad-hoc support to computational researchers --- ## Problem Santa Claus has got lost in his presents warehouse! --- - There's only limited time to find Santa - Elves also need wrapping all those presents - So Mrs Claus has devised a simulation to work out the optimum number of elves to use to find Santa! --- But Mrs Claus needs some help scaling up her code to account for all her elves! --- ## Typing time ![](https://i.giphy.com/media/o0vwzuFwCGAFO/giphy.webp) --- ![Docker logo](https://www.docker.com/wp-content/uploads/2022/03/horizontal-logo-monochromatic-white.png) --- - Docker lets us squash all the bits we need to run out simulation into a container - The container can run on any system that also has Docker installed - Everything is bundled into a recipe file to make building the container reproducible/shareable --- ## Time to type! ![](https://i.giphy.com/media/JIX9t2j0ZTN9S/giphy.webp) --- ## Introducing [Devcontainers](https://code.visualstudio.com/docs/devcontainers/containers) ![Diagram showing integration of VSCode and devcontainers](https://code.visualstudio.com/assets/docs/devcontainers/containers/architecture-containers.png) --- ## Type type type ![](https://i.giphy.com/media/XIqCQx02E1U9W/giphy.webp) --- ## Other uses for devcontainers - Debugging an application - Sharing a portable development environment --- ## Thanks for watching! ![](https://i.giphy.com/media/V0iBMLuftFImIBIGzV/giphy.webp) --- ## Acknowledgments - Inspired by [Eric Wanjau's talk at ResCompLeedsCon2022](https://www.youtube.com/watch?v=N-owt0Vl5_w&t=1929s)
{"metaMigratedAt":"2023-06-17T15:54:45.796Z","metaMigratedFrom":"YAML","title":"devcontainers Christmas talk","breaks":true,"contributors":"[{\"id\":\"ca8cdfc3-cb2c-4bfb-8cac-c1044c36daea\",\"add\":5126,\"del\":1915}]"}
    464 views