Docker for Web Developers
Your containerised applications need a controlled deployment environment. With Docker, connect configuration with service operation to prepare for production use. Develop a framework for organising resources and supporting changes.
- Duration
- 4 days 28 hours
- Code
- DKW01FR Code
Presentation
Docker is an open-source tool for packaging an application in an isolated container that can then run on any Linux server. It offers an alternative to virtualisation, allowing applications to be moved to a private or public cloud or to any server.
Objectives
Become familiar with Docker for creating and packaging environments, or containers.
We will explore how developers can use this technology to develop and build images with Dockerfiles, manipulate them as containers, use Docker Hub as an image registry and connect containers using orchestration solutions such as Docker Compose.
A case study based on contemporary web technologies (Node.js and MongoDB) and Docker tooling will illustrate the workshops.
Program
Day 1: First contact with Docker and fundamentals
- Introduction to Docker containers.
- Differences from traditional virtualisation solutions.
- Benefits of Docker.
- Docker tools.
- Image and container concepts.
- Working with images and containers from Docker Hub.
- Introduction to Dockerfiles.
Labs:
- Installing a development environment with Docker Toolbox.
- Using Docker Machine and Docker Client.
- Basic commands and working with and searching for images.
Day 2: Docker layers, images, containers, volumes and file systems
- Overview of Docker's layered architecture and file system.
- Containers and volumes.
- Source code, volumes and containers.
- Linking source code to a Docker volume.
- Deleting volumes and containers.
- Implementation best practices for Dockerised web applications.
- Summary.
Labs:
- Implementing a Node.js/Express stack and running it in a Docker container.
Day 3: Building your first Docker images with Dockerfiles
- Introduction.
- Dockerfile structure and description.
- Docker best practices.
- Docker Build.
- Docker Hub: creating your private repository.
- Environment variables in a Dockerfile.
- Summary.
Labs:
- Creating a customised Node.js Dockerfile for the case study.
- Building a Node.js image.
- Publishing your image to Docker Hub.
Day 4: Inter-container communication
- Introduction to Docker Compose.
- Container linking mechanisms.
- Orchestrating containers with Docker Compose.
- The docker-compose.yml file.
- Docker Compose commands.
- Complex orchestration with Docker Compose.
Additional module: Docker networking: network configuration and exposing ports and network interfaces.
Labs:
- Creating and configuring the service orchestration environment.
- Configuring the Docker Compose file with MongoDB and Node.js containers.
Audience
This course is intended for web developers, architects and project managers.
Prerequisites
- Basic knowledge of web development.
- Basic knowledge of Unix and its commands.
Teaching and assessment methods
- Initial skills assessment
- Training materials provided to participants
- Continuous assessment throughout the course
- End-of-course feedback questionnaire
- Combination of theory and practical application
- Attendance records
- Post-course follow-up evaluation
- Practical exercises
Dates and sessions
Choose the date and delivery format that suit you.
No upcoming sessions are currently available.
fr
en