如何使用network_mode:“ host”监听docker-compose中的所有端口?

时间:2019-03-28 17:08:33

标签: docker docker-compose

即使在最简单的容器上,我似乎也无法继续network_mode: "host"在docker-compose中工作。 docker ps显示以下内容:

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
8a41f9565c31        example_api         "python -u example…"     7 minutes ago       Up 4 seconds                            example_api_1
08550b893e20        mysql:latest        "docker-entrypoint.s…"   14 minutes ago      Up 5 seconds                            example_db_1

这是我的docker-compose文件:

version: '3.4'

services:
  api:
    network_mode: "host"
    build: .
    restart: "on-failure"
    environment:
      MYSQL_DATABASE: "test"
      MYSQL_USER: "test"
      MYSQL_PASSWORD: "test"
      MYSQL_HOST: "127.0.0.1"
      TZ: "America/New_York"

  db:
    network_mode: "host"
    image: "mysql:latest"
    environment:
      MYSQL_DATABASE: "test"
      MYSQL_USER: "test"
      MYSQL_PASSWORD: "test"
      MYSQL_RANDOM_ROOT_PASSWORD: "yes"

我尝试了多种方法来使其正常工作。 docker-compose版本> = 3.4语法允许它工作,并且我已经证明它的“主机”模式网络可以这样运行:

build: 
  context: .
  network: host

但是,我无法弄清楚如何使其与db容器一起工作。

还有其他人遇到这个问题吗?感谢您的协助!

0 个答案:

没有答案