Welche Runtimes gibt es?
...
Codeblock | ||
---|---|---|
| ||
version: '2.4' services: application: depends_on: database: condition: service_healthy image-processing: condition: service_started |
Beachten Sie, dass depends_on
nicht garantiert, dass die aufgelisteten Dienste voll funktionsfähig sind, bevor der abhängige Dienst gestartet wird. Es garantiert nur, dass sie vorher gestartet werden. Für Dienste wie Datenbanken ist oft ein zusätzlicher Mechanismus erforderlich, um sicherzustellen, dass sie vollständig betriebsbereit sind, bevor Anwendungen, die von ihnen abhängen, gestartet werden.
Healthcheck
Die Garantie, dass der Dienst voll funktionsfähig ist, bringt ein Healtcheck. Der wird bspw. in der Datenbank durchgeführt:
Codeblock | ||
---|---|---|
| ||
version: '2.4' services: database: healthcheck: test: ["CMD", "mysql", "-uroot", "-proot", "-e", "SELECT version();"] interval: 1m timeout: 10s retries: 3 |
...