2017-09-19 2 views
3

J'ai trois services à construire, A, B et C. A devrait être construit en premier lieu, car B et C dépendent de A (ils importent A comme image). Je pensais qu'ils devraient être construits dans l'ordre mais je découvre juste qu'ils sont construits dans un ordre aléatoire? Alors, comment contrôler l'ordre de construction dans docker-compose.yml?Comment contrôler l'ordre de construction du docker-composer?

Répondre

5

Vous pouvez contrôler l'ordre de construction à l'aide de la directive depends_on.

services: 
    ... 

    B: 
    depends_on: 
     - A 
    C: 
    depends_on: 
     - A 
+2

Est-ce que 'depends_on' a un effet sur la phase de construction? J'ai jeté un coup d'œil sur [documents] (https://docs.docker.com/compose/compose-file/#depends_on) et il semble n'avoir d'effet que sur la phase de démarrage. – Kim

+0

Oui, c'est le cas. Vous ne savez pas pourquoi il n'est pas documenté –

+0

Vous pouvez également utiliser 'links',' net', 'volume_from' pour influencer la priorité de construction –