迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 操作系统 > Docker >

在 Docker Compose 中添加网络模式

作者:迹忆客 最近更新:2023/04/17 浏览次数:

默认情况下,单个网络由 Docker Compose 在我们的应用程序中创建,并将每个容器作为服务添加到那里。 网络上的每个容器都可以被单个网络上的容器访问和找到。

我们可以通过在 Docker Compose 中定义网络模式来配置我们的网络。 本文将讨论如何在 Docker Compose 中使用网络模式定义和设置网络。


在 Docker 中收集网络信息

如果我们想配置一个通过特定容器或服务的网络模式,我们需要先收集额外的信息。 运行命令 docker network ls 将使我们能够列出当前的 Docker 网络。

它应该类似于下面的输出。

NETWORK ID          NAME                         DRIVER
17cc61428fef        bridge                       bridge
098522f7fce0        sample_default               bridge
1ce3c472afc6        test_default                 bridge
8fd07e456e6c        host                         host
3b5787919641        none                         null

如果我们必须通过上面提供的前一个命令知道我们的容器、服务或网络的名称或 ID,则此命令将很方便。


在 Docker Compose 中配置网络模式

在 Docker Compose 版本 3 中,我们可以通过提供 network_mode: 参数及其值在我们的 YAML 文件中使用网络模式。 因此,请确保您使用 version: 参数和值 3 或 3.0 指定我们使用的 Docker compose 版本。

例子:

version: "3"
services:
  app:
    network_mode: "host"

在上面的示例中,我们使用示例主机作为我们的网络模式,但我们可以指定容器或服务来代替。 从 Docker 官方文档中,我们可以在定义服务的网络模式时使用以下多个值:

例子:

network_mode: "bridge"
network_mode: "host"
network_mode: "none"
network_mode: "service:[service name]"
network_mode: "container:[container name/id]"

由于我们之前收集了信息,因此在定义网络模式时可以使用网络名称或 ID。

例子:

network_mode: "container:sample_default"
network_mode: "container:1ce3c472afc6"

在 Docker Swarm 中配置网络模式

运行 Docker 应用程序的物理机或虚拟机的集合称为 Docker Swarm。 名为 Docker Swarm 的容器编排解决方案允许用户控制分布在不同主机上的许多容器。

一旦一组机器聚集在一起,我们仍然可以运行我们习惯的 Docker 命令,但我们集群中的设备现在将执行它们。

不幸的是,Docker Compose 和 Swarm 不能很好地结合。 因此,我们需要使用 networks 参数手动定义网络,而不是使用 network_mode 参数,它应该如下所示。

例子:

version: "3.0"
services:
    app:
        networks:
            - host

networks:
    host:
        name: [Your Network Mode Value]
        external: true

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 Linux 中托管 Docker Internal

发布时间:2023/04/18 浏览次数:139 分类:Docker

Docker 允许开发人员通过将应用程序包装在称为容器的标准化单元中来高效地构建、测试和部署应用程序。 在使用 Docker 容器时,您可能会遇到需要将容器与主机连接的场景。

在 Docker 中设置工作目录

发布时间:2023/04/18 浏览次数:82 分类:Docker

在 Docker 中,我们可以通过编辑 Dockerfile 并添加密钥 WORKDIR 来设置我们的工作目录。本文将讨论在 Docker 中更改我们当前和默认的工作目录。

在 Docker 容器中公开多个端口

发布时间:2023/04/18 浏览次数:143 分类:Docker

Docker 容器使用端口来实现万维网上不同设备之间的通信。 在本篇文章中,我们将学习如何使用 Nginx 应用程序在 Docker 容器中公开多个端口。

将用户添加到 Docker 容器

发布时间:2023/04/18 浏览次数:187 分类:Docker

在本文中,我们将学习如何通过实现返回产品数组的 Express 应用程序将用户添加到 Docker 容器。

使用 Docker 网络主机命令

发布时间:2023/04/18 浏览次数:112 分类:Docker

在本文中,我们将学习如何使用 --network 命令将容器添加到主机网络。 如果我们不使用此命令指定网络,我们还将了解如何将容器添加到默认网络。

清除 Docker 容器日志

发布时间:2023/04/18 浏览次数:181 分类:Docker

本文介绍了我们可以用来清除 docker 容器中日志的不同方法。日志是应用程序在特定事件或状态发生时记录的信息,它们帮助我们监控应用程序并采取必要的措施。

Docker 中的守护进程日志位置

发布时间:2023/04/18 浏览次数:175 分类:Docker

本文将讨论守护进程事件以及我们通常可以在哪里找到每个操作系统 (OS) 的守护进程日志。

Dockerfile 中 COPY 和 ADD 命令的区别

发布时间:2023/04/18 浏览次数:158 分类:Docker

在 Dockerfile 中,我们可以使用 COPY 或 ADD 命令复制这些文件。 这些命令在功能上是相同的; 但是,存在一些差异。本文介绍了 Dockerfile 中 COPY 和 ADD 命令之间的区别。

Docker 中的 --rm 标志

发布时间:2023/04/18 浏览次数:77 分类:Docker

本文介绍如何在 docker 中使用 --rm 命令。 此外,它还提供了使用命令的优势。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便