Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
technique:docker:good_practices:misc [2020/10/13 12:20] – qduchemi | technique:docker:good_practices:misc [2020/10/13 16:19] (Version actuelle) – [Healthcheck] qduchemi | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | {{indexmenu_n> | ||
+ | # Recommandations générales | ||
+ | ## Version du fichier Compose | ||
+ | |||
+ | On utilisera une version récente dans les fichiers `docker-compose.yml`, | ||
+ | |||
+ | ```yaml | ||
+ | version: ' | ||
+ | ``` | ||
+ | |||
+ | ## Indications pour construire l' | ||
+ | |||
+ | Lorsque l' | ||
+ | |||
+ | < | ||
+ | |||
+ | La commande `docker-compose build` construira automatiquement toutes les images du fichier Compose qui doivent l' | ||
+ | |||
+ | < | ||
+ | ```yaml | ||
+ | services: | ||
+ | example: | ||
+ | image: < | ||
+ | build: < | ||
+ | ``` | ||
+ | </ | ||
+ | |||
+ | ### Cas général | ||
+ | |||
+ | Le `Dockerfile` se trouve dans le même dossier que le fichier Compose. On indiquera : | ||
+ | |||
+ | ```yaml | ||
+ | build: . | ||
+ | ``` | ||
+ | |||
+ | Ce qui indique à Compose d' | ||
+ | |||
+ | ### Dockerfile avec nom alternatif | ||
+ | |||
+ | On précisera le nom du Dockerfile : | ||
+ | |||
+ | ```yaml | ||
+ | build: | ||
+ | context: . | ||
+ | dockerfile: <nom du Dockerfile> | ||
+ | ``` | ||
+ | |||
+ | ### Dockerfile dans un dossier différent | ||
+ | |||
+ | On changera le contexte de construction : | ||
+ | |||
+ | ```yaml | ||
+ | build: <dossier où se trouve le Dockerfile> | ||
+ | ``` | ||
+ | |||
+ | ### Depuis un dépôt Git distant | ||
+ | |||
+ | < | ||
+ | |||
+ | Si le `Dockerfile` nous convient, il serait pénible de le copier sur notre dépôt et de le synchroniser à la main au fil des évolutions. Heureusement, | ||
+ | Comme il est préférable de récupérer une version précise, par exemple via un tag Git, on pourra utiliser la syntaxe suivante pour construire l' | ||
+ | |||
+ | ```yaml | ||
+ | build: https:// | ||
+ | ``` | ||
+ | |||
+ | < | ||
+ | |||
+ | ## Politique de redémarrage | ||
+ | |||
+ | On préférera utiliser la politique `restart: unless-stopped` pour les services. Ceci évite qu'un service arrêté explicitement ne se relance tout seul au démarrage de la machine. | ||
+ | |||
+ | ## Écrasement du HEALTHCHECK | ||
+ | Les `HEALTHCHECK` définis dans les Dockerfile ont souvent un intervalle assez long, ce qui empêche les conteneurs d' | ||
+ | |||
+ | Il est donc intéressant de les [définir directement dans le fichier Compose](https:// |