2017-03-08 22 views
0

访问主机端口这是我撰写的文件:多克尔 - 撰写网络,从容器

version: '3' 
services: 
    web: 
    container_name: dash 
    build: 
     context: . 
     dockerfile: Dockerfile 
     args: 
     webpackVersion: 2.2.1 
     nodeVersion: "6.x" 
    ports: 
     - "3036:3036" 
    links: 
     - mongodb:dbhost 
    depends_on: 
     - mongodb 
    mongodb: 
    container_name: mongodb 
    build: 
     context: . 
     dockerfile: Dockerfile-mongodb 

眼下web访问mongodb容器,其中我一直应用的configs。但我也需要能够访问本地计算机上的端口3306,在该端口上运行docker-compose,从web

我试图按照文档,但我是新的泊坞窗,所以它对我来说看起来相当复杂,如何在docker-compose中使用网络。

如果有人能帮助我理解这一点,我会非常感激!

+0

你运行Linux,Windows或Mac? –

+0

现在在Mac上,但生产将在Linux上 –

+0

你用什么命令来运行码头组成? –

回答

1

我发现只有一种方法来打开所有主机端口,是使用network_mode: host 它应该也可以通过使用network但在我的情况下,第一个解决方案就足够了。

version: '3' 
services: 
    web: 
    container_name: dash 
    network_mode: host 
    build: 
     context: . 
     dockerfile: Dockerfile 
     args: 
     webpackVersion: 2.2.1 
     nodeVersion: "6.x" 
    ports: 
     - "3036:3036" 
    links: 
     - mongodb:dbhost 
    depends_on: 
     - mongodb 
    mongodb: 
    container_name: mongodb 
    network_mode: host 
    build: 
     context: . 
     dockerfile: Dockerfile-mongodb 

network_mode: host将无法​​在Mac上工作,你应该在VB运行搬运工