Build a Container Image for Another Platform Using a Remote Builder
Learn how to build container images for non-native CPU architectures by offloading the build to a remote machine using Docker Buildx.
Focused hands-on problems designed to help you hone your DevOps or Server Side skills. Some challenges are more educational, while others are based on real-world scenarios. The platform provides hints and feedback for each challenge, including automated solution checks.
Challenges crafted by iximiuz Labs to help you master DevOps and Server Side topics.
Learn how to build container images for non-native CPU architectures by offloading the build to a remote machine using Docker Buildx.
A poorly structured Docker image contains leftover build dependencies and leaked private registry credentials hiding in its intermediate layers. Squash the image to produce a clean, compact version with the same runtime filesystem.
Practice using Docker build arguments to inject version and commit metadata into a Go application during the image build.
Write a Dockerfile for a simple CLI tool and learn how to use the ENTRYPOINT instruction to improve the user experience of containerized command-line applications.
Write a Dockerfile for a simple web service and learn how Docker images can improve the application startup UX by defining sensible runtime defaults using ENV, USER, and STOPSIGNAL instructions.
Learn how to build container images for non-native CPU architectures using Go's support of cross-compilation.
Learn how to build container images for non-native CPU architectures (e.g., arm64 on an amd64 host) using QEMU user-space emulation and Docker.
Save container images as OCI layouts and explore the on-disk structure of single-platform (manifest-based) and multi-platform (index-based) images.
Practice optimizing applications' container images using multi-stage builds. Rewrite single-stage Dockerfiles for a Go backend and a TypeScript frontend to produce smaller, production-ready images without unnecessary build tools and dev dependencies.
Build a container image from a Dockerfile and use Docker commands to inspect its size and layer composition.