2017-09-29 1 views
0

ich einen kleinen Stapel auf eine UCPDocker komponieren Set Containername für Stapel

Eines der Probleme, bin Bereitstellung ich bin vor, um den Behälter für service1 benennen.

Ich brauche einen statischen Namen für den Behälter haben, da sie durch mycustomimageforservice2

Die container_name option genutzt hat ignoriert, wenn ein Stapel in Schwarm-Modus mit einer (Version 3) Datei Compose bereitstellen.

Ich muss Version verwenden: 3 verfassen Dateien.

version: "3" 
services: 

    service1: 
    image: dockerhub/service1 
    ports: 
     - "8080:8080" 
    container_name: service1container 
    networks: 
     - mynet 

    service2: 
    image: myrepo/mycustomimageforservice2 
    networks: 
     - mynet 
    restart: on-failure 

networks: 
    mynet: 

Was sind meine Optionen?

Antwort

1

Sie können einen containernamen in compose nicht erzwingen, da er beispielsweise die Skalierung eines Dienstes (durch Aktualisierung der Anzahl der Replikate) zulässt und mit Namen nicht funktioniert. Ein Dienst kann stattdessen auf den anderen zugreifen, indem er servicename (http://serviceName:internalServicePort) verwendet, und docker führt den Rest für Sie aus (z. B. Auflösen einer tatsächlichen Containeradresse, Lastenausgleich zwischen Replikaten ....).

Dies funktioniert mit dem Standard-Netzwerktyp, der Overlay ist