
Learn foundational Docker build security by following best practices for Dockerfiles, including avoiding root user accounts, copying only necessary files, using multi-stage builds, and gradually securing images with practical examples.
Install docker using the official instructions, update the package manager, install prerequisites, add the docker GPG key, verify with docker run hello-world, and add your user to the docker group.
Learn why securing the Docker build process matters, and apply best practices for writing secure Dockerfiles to prevent vulnerabilities in images and containers, including multi-stage builds.
Build a basic docker image by creating a Python Flask API, writing a docker file, building the image with docker build, and running a container while noting security improvements.
Implement non-root practices in Docker containers by creating a low-privileged user in the Dockerfile and running containers with that user.
Learn how to use the docker copy command safely by copying only necessary files, avoiding secrets, and preventing large, risky image bloat.
Understand how the add command downloads content during docker build, assess risks from untrusted sources and broken links, and prefer the copy command for secure, reliable image creation.
Identify the security risks of untrusted base images and learn to pull official, verified images to ensure timely security updates in Docker builds.
learn to build docker images with minimal base images or scratch to minimize attack surface, and remove unnecessary binaries by auditing installed packages with apk info.
Avoid the latest tag in docker builds to ensure reproducible images; specify exact base image versions, like python 3.9.1-alpine, and lock libraries via requirements.txt for stability and security.
Hardening docker container files by enforcing root ownership and 755 permissions prevents low-privileged users from modifying files, while others have only execute rights, and API verification shows functionality remains.
Discover why secrets should never be embedded in docker images, environment variables, or build args, and learn to use dedicated secret management platforms like Carbonetti secrets and secret worlds.
avoid installing and running administrative services inside Docker build images; containers should run a single process, reducing surface area and preventing potential container escapes.
Discover how multi-stage builds reduce final image size and attack surface by performing builds in an intermediate container and copying only the necessary libraries and binaries to the final image.
Reinforces Docker build security best practices and encourages learners to share the course with colleagues and leave feedback to help improve future sessions.
This course introduces students to the security concepts associated with Docker builds. Docker is a popular software and it is widely used in Information Technology Industry. It's popularity also brings a larger attack surface and thus it is important to understand it's security aspects to be able to protect Docker containers.
One of the first steps in building secure Docker images is to write the Dockerfile with build instructions by following security best practices. This is the first stage of hardening your Docker containers. This course provides various tips and techniques with practical examples to produce secure docker builds.
This course is designed for students with any experience. If you never used Docker, its fine we have covered the basics and we will discuss how to instal Docker. If you have used Docker for containerizing your applications, thats even better. You know how to build docker images. So this course will build your skills on top of it.
It should be noted that this course is different from the other Docker Security course we published earlier. While the other courses focus completely on attacks and how to penetrate, this course's primary focus is to show the defences and best practices to protect containers from security issues.