wake-up-neo.com

Erstellen Sie mithilfe des Andockfensters mehrere Instanzen für dasselbe Image

Ich muss mehrere Container für dasselbe Image starten. Wenn ich meine Compose-Datei wie unten gezeigt erstelle, funktioniert es einwandfrei.

version: '2'

services:
  app01:
    image: app
  app02:
    image: app
  app03:
    image: app
  app04:
    image: app
  app05:
    image: app  

Gibt es eine einfache Möglichkeit, die Anzahl der Instanzen für das Verfassen zu erwähnen, anstatt sie mehrmals zu kopieren und einzufügen?

51
KitKarson

Aktualisierte Antwort (Okt 2017)

Wie bereits erwähnt, wurde die Docker-API geändert. Ich aktualisiere meine Antwort, da dies wahrscheinlich die Antwort ist, die die meisten Leute betrachten werden.

docker-compose up -d --scale app=5

Leider können wir dies derzeit (ab Version 3.5) nicht in einer docker-compose.yml-Datei angeben.

Einzelheiten:
Sie haben die Option scale für Version 2.2 und 2.3 von docker-compose eingeführt, diese jedoch für Version 3.0 entfernt. Um Version 2.2 oder 2.3 verwenden zu können, müssen Sie eine ältere Version des Docker-Compose-Tools herunterladen. Die aktuelle Version unterstützt 2.2 oder 2.3 nicht (unterstützt jedoch 2.0 oder 2.1). Es gibt auch einen neuen deploy Abschnitt mit replicas: 5 aber es ist nur für den Schwarmmodus.

--- Alte Antwort --------------------------------------

docker-compose scale app=5

Siehe https://docs.docker.com/compose/reference/scale/

Dann brauchen Sie nur diese Docker-Compose-Datei

version: '2'

services:
  app:
    image: app
61
Bernard

Der Befehl scale ist jetzt veraltet. Verwenden Sie stattdessen up.

docker-compose up --scale app=2

weitere Informationen finden Sie unter https://docs.docker.com/compose/reference/up

25
fssilva

Sie können dies mit replica tun, wie in https://docs.docker.com/compose/compose-file/#replicas erwähnt

version: '3'
services:
  worker:
    image: dockersamples/examplevotingapp_worker
    networks:
      - frontend
      - backend
    deploy:
      mode: replicated
      replicas: 6
14
Esra