Docker组成,在net:host中运行容器
我想用docker-compose在“主机”networking中产生3个服务。 这是我的docker-compose.yml文件:
version: '2' services: mysql: image: mysql net: "host" nginx: image: nginx net: "host" app: image: tomcat net: "host"
我得到了以下错误:
$ 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'
我在Windows上使用boot2docker。
Docker和Docker-compose版本:
$ docker -v Docker version 1.10.2, build c3959b1 $ docker-compose -version docker-compose version 1.6.0, build cdb920a
如果我通过使用docker run --net = "host"
手动运行所有服务docker run --net = "host"
一切正常工作。
在我读的文档中,docker-compose支持 net命令:
净
联网模式。 使用与docker客户端相同的值–net参数。
网:“桥”
净:“无”
净:“容器:[名称或ID]”
网:“主机”
https://docs.docker.com/v1.6/compose/yml/#net
我究竟做错了什么?
那些文件已经过时了。 我猜测1.6中的URL是Docker 1.6,而不是Compose 1.6。 看看这里的正确语法: https : //docs.docker.com/compose/compose-file/#net 。 使用v2 YAML格式时,您正在寻找network_mode
。
只是打印
network_mode:“主机”
删除services.app的warnconfiguration选项:'net',它可以工作。
- 在Windows中从boot2docker打开Ipython笔记本
- Dockerfile COPY文件没有在VOLUME上显示
- 当使用docker run命令时,Docker容器退出(0),但使用docker start命令
- Docker容器不在boot2docker启动时运行
- 如何使用主机MacOS机器连接到在Docker容器上运行的服务?
- Docker MongoDB – 在磁盘上添加数据库到容器
- Docker返回“json:can not unmarshal string into Go value of type string”
- Docker Windows 7:无法findMAC地址错误的匹配IP
- 在Docker容器中播放框架自动加载