设置从docker-compose.yml指定一个Docker容器的IP

我有docker-compose.yml文件

 web_server: build: web_server/ ports: - "8000:8000" links: - mongo tty: true environment: SYMFONY__MONGO_ADDRESS: mongo SYMFONY__MONGO_PORT: 27017 networks: app_net: ipv4_address: 172.16.238.10 ipv6_address: 2001:3984:3989::10 networks: app_net: driver: bridge enable_ipv6: true ipam: driver: default config: - subnet: 172.16.238.0/24 - subnet: 2001:3984:3989::/64 mongo: image: mongo:3.0 container_name: mongo command: mongod --smallfiles expose: - 27017 

我想为我的web_server有一个指定的IP在另一个应用程序中传递。

但是当我调用docker-compose up命令时,我docker-compose up错误:

 ERROR: The Compose file '.\docker-compose.yml' is invalid because: Unsupported config option for networks: 'app_net' Unsupported config option for web_server: 'networks' 

哪里不对?

我不知道你为什么有这个错误,但你可以尝试解决一些问题:

  1. networking服务器networking必须引用下面声明的networking
  2. 你简化你的networkingconfiguration,并且只从ipv4开始

这是一个工作configuration:

 version: '2' services: webssl: image: nginx:1.11.4-alpine ports: - "443:443" - "80:80" volumes: - /data/nginx/webroot:/usr/share/nginx/html:ro networks: - dmz networks: dmz: ipam: driver: default config: - subnet: 172.77.0.1/24 ip_range: 172.77.0.0/24 gateway: 172.77.0.1