La doc officielle est pas mal, mais elle est totalement insuffisante pour faire des déploiements dans la vraie vie
C'est en partie parce que docker n'est que la partie conteneur, pas orchestration (si on oublie swarm). Donc forcément tu n'aura pas les infos sur tout.
comment faire des Dockerfile en respectant les bonnes pratiques
Pour ça, j'utilise principalement deux techniques:
utiliser des linter sur Dockerfile (genre hadolint mais il y en a d'autres) : ça ne va pas te présenter les bonnes pratiques mais tu pourra au moins valider ce que tu écris (et tu peux aller voir tout la liste des règles)
lire les Dockerfile d'autres personnes, par exemple ceux de Jessie Frazelle mais il y en a plein d'autres
comment tester des Dockerfile en local sans avoir trop d'écart avec ta prod
Tout dépend ce que tu veux tester vraiment.
Pour ce qui est des images en elles-même, tu peux chercher du côté de Container Structure Test par exemple.
Ensuite, je sais pas bien ce que c'est "tester des Dockerfile". Si ton conteneur contient toute ton app, ben tu testes en prod comme ailleurs. Si la question c'est comment tester une application composée de plusieurs services (sous forme de docker) s'en est une toute autre et la réponse peut être beaucoup plus complexe (docker ou non d'ailleurs).
comment écrire des unit systemd pour démarrer les containers, avec gestion des dépendances entre containers sur une même machine
Ok, donc ça s'est purement systemd, que ce soit des containers ou non ne devrait pas changer grand chose. Je ne sais pas si on trouve de la doc dessus facilement. Je limite au max les units systemd que j'écris, et j'utilise un orchestrateur pour le reste. Et j'évite qu'il y ait des dépendances entre les conteneurs, que chaque service puisse démarrer sans que les autres soient disponible.
comment scripter le déploiement et la mise à jour de containers sur un petit lot de serveurs, proprement
Je dirais, ne pas le faire.
Les orchestrateurs sont là pour ça. Et nomad c'est bien.
bonnes et mauvaises pratiques d'administration système avec Docker sur une petite install (moins de 5 serveurs)
On parle de docker ou d'orchestration de conteneurs ? (et donc k8s, nomad, mesos, swarm)
[^] # Re: L'enfer de la doc docker et des bonnes pratiques
Posté par CrEv (site web personnel) . En réponse au journal Revue de livre: Docker, prise en main et mise en pratique sur une architecture micro-services. Évalué à 5.
C'est en partie parce que docker n'est que la partie conteneur, pas orchestration (si on oublie swarm). Donc forcément tu n'aura pas les infos sur tout.
Pour ça, j'utilise principalement deux techniques:
Tout dépend ce que tu veux tester vraiment.
Pour ce qui est des images en elles-même, tu peux chercher du côté de Container Structure Test par exemple.
Ensuite, je sais pas bien ce que c'est "tester des Dockerfile". Si ton conteneur contient toute ton app, ben tu testes en prod comme ailleurs. Si la question c'est comment tester une application composée de plusieurs services (sous forme de docker) s'en est une toute autre et la réponse peut être beaucoup plus complexe (docker ou non d'ailleurs).
Ok, donc ça s'est purement systemd, que ce soit des containers ou non ne devrait pas changer grand chose. Je ne sais pas si on trouve de la doc dessus facilement. Je limite au max les units systemd que j'écris, et j'utilise un orchestrateur pour le reste. Et j'évite qu'il y ait des dépendances entre les conteneurs, que chaque service puisse démarrer sans que les autres soient disponible.
Je dirais, ne pas le faire.
Les orchestrateurs sont là pour ça. Et nomad c'est bien.
On parle de docker ou d'orchestration de conteneurs ? (et donc k8s, nomad, mesos, swarm)