Docker compose, exécutant des conteneurs dans net: host

Je veux créer 3 services dans le réseau “hôte” en utilisant docker-compose. Voici mon fichier docker-compose.yml:

version: '2' services: mysql: image: mysql net: "host" nginx: image: nginx net: "host" app: image: tomcat net: "host" 

J’ai eu l’erreur suivante:

 $ docker-compose up [31mERROR[0m: Validation failed in file '.\docker-compose.yml', reason(s): Unsupported config option for services.app: 'net' Unsupported config option for services.mysql: 'net' Unsupported config option for services.nginx: 'net' 

J’utilise boot2docker sur windows.

Docker et Docker composent la version:

 $ docker -v Docker version 1.10.2, build c3959b1 $ docker-compose -version docker-compose version 1.6.0, build cdb920a 

Si je lance tous les services manuellement en utilisant docker run --net = "host" tout docker run --net = "host" .

Dans la documentation, j’ai lu que la commande net est prise en charge dans docker-compose :

net

Mode de mise en réseau. Utilisez les mêmes valeurs que le paramètre client docker –net.

net: “pont”

net: “none”

net: “conteneur: [nom ou identifiant]”

net: “hôte”

https://docs.docker.com/v1.6/compose/yml/#net

Qu’est-ce que je fais mal?

Ces documents sont obsolètes. Je suppose que le 1.6 dans l’URL est pour Docker 1.6, pas Compose 1.6. Consultez la syntaxe correcte ici: https://docs.docker.com/compose/compose-file/#net . Vous recherchez network_mode lorsque vous utilisez le format v2 YAML.

Juste imprimer

network_mode: "host"

Supprimez l’option de configuration d’avertissement pour services.app: ‘net’, cela fonctionnera.