12 questions inédites : rappel + application + arbitrage sur Dockerfile, build, tags, configuration et sécurité.
Répondez à tout, puis cliquez sur Corriger : score et explications s'affichent.
2.1 · Rappel
1. Dans un Dockerfile, que fait RUN par rapport à CMD ?
RUN = construction (installer), CMD = exécution (démarrer) à chaque run.
2.1 · Application
2. Idir écrit son premier Dockerfile Node. Quel ordre est correct ?
Base, dossier, code, install au build, port déclaré, démarrage au run.
2.1 · Application
3. Le build d'Idir échoue. Où cherche-t-il en premier ?
La dernière étape accuse : dépendance manquante, faute de frappe, réseau.
2.2 · Rappel
4. Pourquoi placer les dépendances AVANT le code dans un Dockerfile ?
Stable d'abord (caché), changeant ensuite (rejoué seul).
2.2 · Application
5. L'image d'Idir dépasse 1 Go avec le SDK livré en prod. Que fait-il ?
Construire gros, livrer maigre : seul le runnable atteint l'image finale.
2.2 · Arbitrage
6. Idir hésite entre optimiser à l'intuition ou mesurer. Que lui conseillez-vous ?
On optimise ce qu'on mesure : taille totale + poids par couche.
2.3 · Application
7. Idir publie la version 1.2.0 testée. Quelle séquence est correcte ?
Taguer au build (compte inclus), authentifier, pousser, tirer ailleurs.
2.3 · Arbitrage
8. La prod d'Idir tire latest et dérive à chaque push. Quelle politique impose-t-il ?
Prod = tag figé et testé, jamais réécrit ; latest reste un confort de dev.
2.4 · Rappel
9. Quelle différence entre ARG et ENV ?
ARG construit (build), ENV exécute (run) : ne pas les confondre.
2.4 · Application
10. Idir sert le dev (3000) et la recette (8080) avec la même image 1.0. Comment ?
Défaut sain + surcharge -e : une image, N environnements.
2.5 · Application
11. L'image d'Idir tourne en root. Quel durcissement applique-t-il ?
Deux lignes (USER dédié) + vérification : fini le root par défaut.
2.5 · Arbitrage
12. Idir doit gérer une clé sensible avant un push public. Que choisit-il ?
Zéro secret dans l'image : injecté au run, jamais committé, push public irréversible.
Et après ?
Score ≥ 80 % : passez au Niveau 3 — Compose et stacks multi-conteneurs, en gardant vos réflexes (Dockerfile maigre, tags figés, config hors image, non-root).
Score 60-79 % : reprenez les sections ratées (2.1 RUN/CMD, 2.2 cache et multi-stage, 2.3 tags immuables, 2.4 ARG/ENV, 2.5 non-root et secrets) et refaites les défis 48h.
Score < 60 % : reconstruisez l'app d'Idir pas à pas (Dockerfile 7 lignes, cache + multi-stage, push 1.0.0, ENV PORT, USER + scan), puis repassez le test.
Dans tous les cas : gardez les réflexes — RUN construit et CMD démarre, stable d'abord, tags figés, config hors image, zéro secret embarqué.