In the recently concluded Moodle General Developer Meeting, Rajesh Taneja shared a presentation on “Docker – Replacement for VM“. The goal of the presentation is to discuss about Using Docker for development/testing environment.
Docker is an open platform for distributed applications for developers and sysadmins which provides better cross-system solution of apps.
Advantages of Using Docker:
The advantages of Docker as stated by Gareth in one of the Moodle forums thread are as follows:
- Replicating exactly a complex environment without the need to go through a long installation procedure. Saving you lots of time having to scratch your head over why its not working for you.
- In the ‘Docker container’ which is essentially a virtual machine – a contained sand boxed machine within a machine – you have the web server, db etc. all installed and configured without messing up the parent operating system.
- Its only running when you need it and therefore frees up resources / CPU when you’re doing something else.
The best good case scenario for using it would be if you have a heavily customised moodle with a number of settings which need to be set, you can create your image of this and then every time you need to create a new moodle you can create this from the image which will come with all your settings already in place.
Apart from Docker, Vagrant boxes are also revolving around which can be used to create your own local development environment. Check out our previous coverage over Vagrant boxes here.
You can check out the presentation below or download it through this link. I am looking forward for some more detailed steps for using this awesome tool with Moodle and how it can help Moodle developers.
[pdfviewer width=”600px” height=”400px” align=”center” beta=”true/false”]https://www.moodleworld.com/wp-content/uploads/2016/09/05_docker.pdf[/pdfviewer]
Have you played around with Docker yet? What are the other tools to duplicate the settings from development environment to production environment. You can share your experience with Docker in the comments section below.