链接到容器时如何使用主机networking?

在我的docker – 撰写:

laravel: image: trackware links: - postgis:postgis ports: - "80:80" - "3306:3306" - "443:443" - "220:22" - "8000:8000" net: "host" restart: always volumes: - C:/H/repositories/pubnub:/share container_name: laravel postgis: image: mdillon/postgis env_file: .postgis_env ports: - "9090:9000" - "54320:5432" container_name: postgis 

如果我运行docker-compose up -d我得到这个错误:

 Conflicting options: host type networking can't be used with links. This would result in undefined behavior 

那么,如何连接到postgis容器时使用net: "host" ? laravel容器需要运行pubnub客户端,这需要高性能的networking来处理实时消息,并且还需要链接到postgis容器来访问数据库。

那么,有什么build议? 我正在使用docker1.10.2

由于您将postgis端口公开到主机,您可以跳过链接并通过localhost:9000连接到它。 我相信这将工作,因为laravel应用程序驻留在主机networking,他们将共享这些端口。

我不知道原因,但…你不应该使用“主机”驱动程序和端口映射,至less你不会得到预期的结果。 在这样的“220:22”的情况下,你会得到22端口映射到主机。

据我所知,“Net”已经过时了,用“ network_mode ”代替。 另外我会build议你更新docker组成的最新版本,现在是1.6.2。 以前的版本有一些networking问题。

可能你可以使用“ 桥 ”驱动程序? 就你而言,我看不出它无法解决的问题。