Despite the benefits, Docker is often shunned by developers. It looks complex. Terminology can be impenetrable. Tutorials never explain how to use Docker during development.
It need not be this way. This course demonstrates the core concepts and explains how to integrate Docker into new or existing development projects. You will quickly learn what Docker can do, how it works, and best-practice techniques for your team.
Day 1 outline:
- What is Docker?
- Quick start example.
- Docker terminology and concepts.
- Installing Docker on Windows, macOS and Linux.
- Starting, stopping, and restarting applications.
- Connecting to running applications.
- Defining volumes and networks.
- Cleaning up installations.
- Using Docker Compose to manage multiple applications.
Day 2 outline:
- Create Docker-powered WordPress development environment.
- Create your own web application with live code editing and debugging.
- An introduction to image repositories, orchestration, and further resources.
Who is this course for?
Developers, DevOps professionals, and IT managers who want to improve their application development and deployment processes. The course specifically refers to web technologies, but the concepts can be applied to any stack.
What you will need
You should have a modern PC running a recent edition of Windows 10, macOS, or Linux (ideally a Debian/Ubuntu distro). Instructions for installing Docker will be provided prior to the course, but further assistance will be available during the day.
- web servers and language runtimes (e.g. Node.js, PHP, Python, Ruby, .NET, etc.)
- other dependencies, such as databases (e.g. PostgreSQL, MongoDB, SQL Server etc.)
The course will be delivered online using Zoom so a stable internet connection is required.
What will you get?
You will receive:
- A full day of Docker training (split over two sessions)
- Videos of recorded Zoom sessions for playback after the event
- Course handouts
- Sample code
- A certificate of attendance.
What can Docker do for you?
Docker can revolutionise the development and deployment of your software projects:
- Install project dependencies in minutes
Docker can install, configure, and manage all the software your project requires, including web servers, language runtimes, frameworks, databases, and more.
- Dependencies are lightweight and isolated
Other than disk space, your PC is not changed. Multiple or legacy versions of the same software can be run concurrently without conflicts, e.g. MySQL 5 and 8. Dependencies can be started, stopped, removed, or reinstalled at any time.
- Applications become portable
Your project and its dependencies can be distributed to other development machines and production servers. It will work identically, even if some software is not natively supported on that OS. Docker ends those “but it works on my PC” complications!
- Continue to use your existing OS, tools, and workflows
Developers can continue to use their preferred software. It does not matter whether they are using Windows, macOS, Linux, specific IDEs, or other tools. Docker provides all the benefits of local development and debugging.
- Deployments become faster and more robust
Docker can scale your application according to demand and keep it running if instances fail.
About Craig Buckler
Craig is a freelance web consultant, speaker, writer, and trainer with more than twenty years in the industry. He has worked on a variety of successful projects and training courses for organisations including Microsoft, Thomson Reuters, Hewlett Packard, Symantec, Vodafone, Sky, ITN, FT.com, The Wall St Journal, Santander, NatWest, HMRC, the UK and European Parliaments, and several local councils and universities.
The European Social Fund is partially funding Software Cornwall to run this training project to provide development training for employees within the software industry. As a Software Cornwall member you will be receiving a discount to this course by email. This course is only available to those from the UK or EU. To participate in the training certain personal information will be required from attendants as proof of employment and eligibility to attend. This information is for the purposes of ensuring that the training will go to the correct participants. You will also be required to complete an evaluation form after the training as part of the attendance.