لابات Docker عملية
لابات Docker هنا بتخليك تشتغل على Docker فعلًا مش تتفرج عليه. كل لاب بيفتح لك ماكينة Linux حقيقية فيها Docker شغال ومعاها مهمة محددة: تبني image، تصلّح Dockerfile بايظ، ترجّع service وقعت، أو تأمّن container قبل ما يطلع production.
هتتدرب على إيه في لابات Docker؟
- Containers و Images
- Dockerfile و Multi-stage builds
- Networks و Volumes
- Docker Compose
- Health checks و Resource limits
- Registries و Digests
- Troubleshooting و Incidents
- Security و Hardening
- Backup و Restore
- Multi-platform images
- Release pipeline
- 01Containers and Imagesابدأ اللاب
Run and inspect your first containers, then build a small image and publish its port.
مبتدئ · 20 دقيقة
- 02Identify the Container from Host Evidenceابدأ اللاب
Monitoring gives you one host PID and nothing else. Work back to the container it belongs to without restarting it.
متوسط · 25 دقيقة
- 03Lifecycle and Troubleshootingابدأ اللاب
Two containers are down for two different reasons. Diagnose both from evidence, repair them, and drive a container through every state it has.
متوسط · 30 دقيقة
- 04Containerize the Status APIابدأ اللاب
Take a real Node service from source code to a running, published container — writing the Dockerfile yourself.
مبتدئ · 35 دقيقة
- 05Repair a Fragile Dockerfileابدأ اللاب
A Dockerfile that builds cleanly and is wrong five ways. Find them from the built image, not from reading, and fix them without changing what the app does.
متوسط · 35 دقيقة
- 06Build Context and Multi-Stage Imagesابدأ اللاب
A working image that ships a build cache, a git directory and a developer's .env. Cut the context, split the build, and prove the runtime carries only what runs.
متوسط · 40 دقيقة
- 07Build Images for Two Architecturesابدأ اللاب
Half your team is on arm64 laptops and the servers are amd64. Publish one image reference that serves both, find out where the emulation actually lives, then stop needing it.
متوسط · 45 دقيقة
- 08Practical Exam A — Build a Production Imageابدأ اللاب
A repository with no container tooling and a list of production requirements. Produce a release-quality image and defend your choices. Requirements only — no procedure.
متقدم · 1.3 ساعة
- 09Backup, Destroy, Restoreابدأ اللاب
Take a backup of a live PostgreSQL container, delete the container and its volume for real, and bring the data back — verified against a checksum you recorded first.
متوسط · 40 دقيقة
- 10Fix a Volume Permission Failureابدأ اللاب
A database hardened to run non-root will not start against its mounted directory. Find the ownership mismatch and repair it without handing root back or making the data world-writable.
متوسط · 30 دقيقة
- 11Networks and Volumesابدأ اللاب
Connect containers by name on a private bridge network, and prove data survives container replacement with a named volume.
متوسط · 25 دقيقة
- 12Three-Zone Network Segmentationابدأ اللاب
Split an application across edge, app and data networks so a compromised gateway has no route to the database — then test the paths that are supposed to fail.
متوسط · 35 دقيقة
- 13Restore a Failed Service Pathابدأ اللاب
Three faults on one request path — a name that will not resolve, a process on the wrong address, and a port mapping to nowhere. Repair all three without flattening the network.
متوسط · 40 دقيقة
- 14Compose the Service Stackابدأ اللاب
Define the Status API plus PostgreSQL as one Compose stack: private network, named volume, environment config, and health-aware startup.
متوسط · ساعة
- 15Overrides, Profiles, and Safe Configurationابدأ اللاب
One stack, two environments, optional extras that cost nothing when unused — and a database password that stops living in the file.
متوسط · 40 دقيقة
- 16Scale the API Behind the Gatewayابدأ اللاب
Three replicas behind Nginx. One problem announces itself with an error; the other is silent and is the one that matters.
متوسط · 40 دقيقة
- 17Practical Exam B — Restore a Broken Stackابدأ اللاب
You inherit a deployment that does not work. Several things in the Compose file are wrong, some loudly and some silently. Existing data must survive the repair.
متقدم · 1.5 ساعة
- 18Prove Graceful Shutdownابدأ اللاب
Every deploy drops requests because SIGTERM never reaches the application. Find it in the exit code, fix PID 1, and prove the stop is clean.
متوسط · 35 دقيقة
- 19Health and Resource Limitsابدأ اللاب
Give a service a real healthcheck, enforce CPU and memory limits, and run it without root.
متقدم · 25 دقيقة
- 20Respond to a Container Incidentابدأ اللاب
Slow, restarting, and a disk filling up. Work out which of the three is the cause, restore service, and keep the evidence.
متقدم · 40 دقيقة
- 21Harden the Runtimeابدأ اللاب
A service running as root with every default capability and a writable filesystem. Apply the four controls and keep it serving.
متقدم · 35 دقيقة
- 22Scan, Inventory, and Prove an Imageابدأ اللاب
A credential reached a published image. Find it with a scanner, ship a clean rebuild that never contained it, and leave behind an SBOM and a provenance record that name the exact digest.
متقدم · ساعة
- 23The Secret in the Layerابدأ اللاب
A credential was copied into an image and deleted in the next instruction. Find it in the layer that still has it, rebuild without it, and harden what runs.
متقدم · 40 دقيقة
- 24Publish a Release by Digestابدأ اللاب
Push one build under several tags to a private registry, prove they all name the same bytes, then delete every local copy and pull it back by digest.
متوسط · 45 دقيقة
- 25Build the Release Pipelineابدأ اللاب
Wire build, test, scan and publish into one script that fails fast, refuses to ship a broken revision, and tags every release immutably.
متقدم · 1.3 ساعة
- 26Promote and Roll Back by Digestابدأ اللاب
Promote a tested release without rebuilding, deploy one that passes its health check and answers wrongly, and get back in two minutes.
متقدم · 40 دقيقة
- 27Practical Exam C — The Release Lifecycleابدأ اللاب
Source to a hardened, scanned, signed, published release — then deploy it, find it faulty, and recover by rolling back to a digest you can prove was verified.
متقدم · ساعتين
- 28Rescue and Harden Productionابدأ اللاب
A production-like stack is down. Diagnose it, restore service, then harden the image and runtime and prove it survives a database restart.
متقدم · 1.5 ساعة
ليه تتعلم Docker عملي؟
- Docker مش نظرية؛ الفرق بين اللي فاهمه واللي شغال بيه بيبان أول ما container يقع.
- اللابات بتمشي معاك من أول container لحد pipeline كامل بيطلع release بالـ digest.
- في لابات مخصصة للأعطال: Dockerfile هش، volume من غير صلاحيات، service path واقع. دي اللي بتقابلها في الشغل.
أسئلة شائعة
محتاج أعرف Linux قبل لابات Docker؟
أساسيات الـ terminal كفاية: تتنقل بين المجلدات وتشغّل أوامر. لو حاسس إنك محتاج تقوّي الأساس، ابدأ بلابات Linux وارجع.
اللابات بتغطي Docker Compose؟
أيوه. في لابات لبناء stack كامل بـ Compose، ولـ overrides و profiles، ولعمل scale لـ API ورا gateway.
في امتحانات عملية؟
أيوه، تلات امتحانات عملية في آخر الكورس: تبني production image، ترجّع stack بايظ، وتعمل دورة release كاملة.