Как прослушать все порты в docker-compose, используя network_mode: "host"? - PullRequest
0 голосов
/ 28 марта 2019

Я не могу заставить network_mode: "host" работать в docker-compose, даже в самых простых контейнерах. docker ps показывает следующее:

& # x200B;

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

& # x200B;

Вот мой 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 version> = 3.4 Синтаксис позволяет это работать, и я доказал, что это работает в режиме «хоста» следующим образом:

build: 
  context: .
  network: host

Однако я не могу понять, как заставить его работать с контейнером db.

& # x200B;

Кто-нибудь еще сталкивался с этой проблемой? Любая помощь приветствуется!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...