2016-03-12 38 views
26

Tôi muốn đẻ trứng 3 dịch vụ trong mạng "host" bằng cách sử dụng docker-compose. Dưới đây là tập tin Docker-compose.yml tôi:Docker soạn, chạy container trong mạng: host

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

Tôi đã nhận lỗi sau:

$ 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' 

Tôi đang sử dụng boot2docker trên cửa sổ.

Docker, và Docker-soạn phiên bản:

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

Nếu tôi chạy tất cả các dịch vụ bằng tay bằng cách sử dụng docker run --net = "host" tất cả mọi thứ đang làm việc tốt.

Trong các tài liệu tôi đọc mà ròng lệnh được hỗ trợ trong Docker-soạn:

net

Networking mode. Use the same values as the docker client --net parameter.

net: "bridge"

net: "none"

net: "container:[name or id]"

net: "host"

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

Tôi đang làm gì sai?

Trả lời

38

Các tài liệu đó đã lỗi thời. Tôi đoán 1,6 trong URL là cho Docker 1.6, không Compose 1.6. Kiểm tra cú pháp chính xác tại đây: https://docs.docker.com/compose/compose-file/#net. Bạn đang tìm kiếm network_mode khi sử dụng định dạng v2 YAML.

+0

Đó là thực sự khó hiểu ... Tôi sẽ đánh dấu các liên kết tài liệu ngay lập tức. network_mode đang hoạt động tốt! –

0

xóa tùy chọn cấu hình cảnh báo cho services.app: 'net', nó sẽ hoạt động.

Các vấn đề liên quan