2017-09-29 4 views
0

Je suis le déploiement d'un fichier de composition sur le UCP via:Comment désactiver la génération de réseau sur la pile de docker déployer

docker stack deploy -c docker-compose.yml custom-stack-name 

En fin de compte, je veux déployer plusieurs fichiers Compose (chaque cadrez fichier décrit la configuration d'un séparée microservice) sur un réseau docker appsnetwork

version: "3" 
services: 

    service1: 
    image: docker/service1 
    networks: 
     - appsnetwork 

    customservice2: 
    image: myprivaterepo/imageforcustomservice2 
    networks: 
     - appsnetwork 

networks: 
    appsnetwork: 

La commande docker stack deploy crée automatiquement un nouveau réseau avec un nom généré comme ceci: custom-stack-name_appsnetwork

Quelles sont mes options?

Répondre

1

Essayez de créer le réseau vous d'abord

docker network create --driver=overlay --scope=swarm appsnetwork 

Après que rendre le réseau externe dans votre Compose

version: "3" 
services: 
    service1: 
    image: nginx 
    networks: 
     - appsnetwork 

networks: 
    appsnetwork: 
    external: true 

Après que deux copies en cours d'exécution de la pile

docker stack deploy --compose-file docker-compose.yml stack1 
docker stack deploy --compose-file docker-compose.yml stack2 

Docker inspecter pour les deux spectacles IP dans le même réseau

$ docker inspect 369b610110a9 
    ... 
      "Networks": { 
       "appsnetwork": { 
        "IPAMConfig": { 
         "IPv4Address": "10.0.1.5" 
        }, 
        "Links": null, 
        "Aliases": [ 
         "369b610110a9" 
        ], 

$ docker inspect e8b8cc1a81ed 

      "Networks": { 
       "appsnetwork": { 
        "IPAMConfig": { 
         "IPv4Address": "10.0.1.3" 
        }, 
        "Links": null, 
        "Aliases": [ 
         "e8b8cc1a81ed" 
        ],