Docker版本18.04.0-ce会忽略不支持的选项:network_mode

Pau*_*eux 3 shiny docker docker-compose

对于一个小项目,我希望Docker容器中的应用程序连接到计算机的本地主机。这个问题的答案:从Docker容器内部,如何连接到计算机的本地主机?告诉我首选的方法是--net="host"在docker run命令中使用。

我使用撰写文件来启动容器。而这个问题对我的net选项被重命名为network_mode: "host"

这是撰写文件的开头

version: '3.6'
services:
  shiny:
    image: paulrougieux/eutradeflows
    deploy:
      restart_policy:
        condition: on-failure
    network_mode: "host"
    ports:
      - "3838:3838"
Run Code Online (Sandbox Code Playgroud)

当我启动这个文件时

 sudo docker stack deploy -c stackshiny.yml shiny
Run Code Online (Sandbox Code Playgroud)

我得到错误:

Ignoring unsupported options: network_mode
Run Code Online (Sandbox Code Playgroud)

有关信息

$ sudo docker version
Client:
 Version:   18.04.0-ce
Server:
 Engine:
  Version:  18.04.0-ce
Run Code Online (Sandbox Code Playgroud)

如何启用从Docker容器到主机上数据库的连接?

yam*_*enk 5

如在docker-compose文件network_mode文档中所述:

注意当以群集模式(版本3)组成文件以群集模式部署堆栈时,将忽略此选项。network_mode:“主机”不能与链接混合。

network_mode使用上泊坞窗群进行部署时,不能使用docker stack deploy。对于版本18.04而言,这不是新功能,但版本更旧。

network_mode仅当使用将该容器部署到本地计算机上时,此命令才能与docker-compose一起使用docker-compose up

  • @PaulRougieux`docker stack`仅适用于docker swarm。https://docs.docker.com/engine/reference/commandline/stack_deploy/#extended-description (3认同)