为 docker 容器提供可路由的 IP 地址

2023-12-28

我在 ubuntu 14.04 上运行它并且已经设置docker0到静态 IP,然后通过防火墙从公共 IP 路由到该静态 IP。我正在尝试将后端 API 设置为在 docker 容器中运行,但对一些事情感到困惑。

1.) 我将如何映射docker0的 ip 到容器的 ip 这样docker0知道将传入的数据包发送到容器(如果可能的话动态地)。

2.)如果还没有以这种方式完成,我怎样才能做到这样,这样我就不必每次重新运行该docker容器时都进行设置?

提前致谢!


我假设您希望在 docker 之外为您的 docker 容器分配一个 IP。

首先,创建一个新的 IP 并将其分配给您主机的接口(我们假设您的接口名为 eth0)。

$> ip addr add 10.0.0.99/8 dev eth0

现在,当您启动容器时,指定该地址并将其链接到您的 docker 容器:

$> docker run -i -t --rm -p 10.0.0.99:80:8080 base

-p 参数将使 docker 创建一个 iptables NAT 规则,该规则会将与目标 10.0.0.99:80 匹配的所有流量 nat 到端口 8080 上的 docker 容器。

如果您需要自动化该流程并进行扩展,请咨询以下资源:https://github.com/jpetazzo/pipework https://github.com/jpetazzo/pipework

docker 文档是一个好的开始:https://docker.github.io/engine/userguide/networking/ https://docker.github.io/engine/userguide/networking/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为 docker 容器提供可路由的 IP 地址 的相关文章

随机推荐

  • TwoWay 或 OneWayToSource 绑定无法对只读属性起作用

    我有一个只读属性 需要在文本框中显示 并在运行时收到此错误 我已经设置了IsEnabled False IsReadOnly True 没有运气 其他搜索说只读应该修复它 但不适合我 我有一个丑陋的解决方法 添加一个虚拟设置器 没有代码很难
  • Internet Explorer 中的图像数据集

    我有一个数组缓冲区 名为MEM 大于画布宽度 高度尺寸 我想将 arrayBuffer 数据绘制到画布上 imgData data set 应该可以工作 因为 imgData data 是一个 Uint8Array 它具有 set 方法 它
  • 如何在 ASP.NET Core 中获取 HttpContext.Current? [复制]

    这个问题在这里已经有答案了 我们目前正在使用 ASP NET Core 重写 转换我们的 ASP NET WebForms 应用程序 尽量避免重新设计 有一个部分我们使用HttpContext在类库中检查当前状态 我怎样才能访问HttpCo
  • 在invalidatelat观察者内增加reactivevalue

    我正在尝试构建闪亮的应用程序来进行一个非常简单的测验 我有一个包含 10 个问题的 data frame 用户点击回答 0 或 1 它一直有效 直到我尝试实施timer 倒数以便下一个问题在 5 秒后自动出现 使用invalidateLat
  • 如何在 netlogo 上创建计时器?

    对于我的迷宫项目 我想创建一个监视器按钮来跟踪海龟从开始到结束所需的时间 我该如何为计时器编写代码 查看reset timer and timer并在文档中 在迷宫设置期间 执行reset timer 在迷宫运行过程中 您可以使用以下命令检
  • 解构 C# 元组

    是否可以像 F 一样在 C 中解构元组 例如 在 F 中 我可以这样做 in F let tupleExample 1234 ASDF let x y tupleExample x has type int y has type strin
  • 如何在 Delphi 中使用 dll 导出的 C++ 类

    有没有办法在 Delphi for win32 中使用 win32 dll 导出的 C 类 是否有其他方法来归档类似的东西 COM NET 您无法导入类 您只能导入函数 鲁迪 维尔修斯 Rudy Velthuis 就该主题撰写了详细的文章
  • Spring Boot应用程序启动后立即关闭

    我正在尝试构建一个简单的 Spring Boot 应用程序 当我运行 Spring Boot 应用程序时 它在启动后立即关闭 下面是控制台日志 Spring Boot v1 4 1 BUILD SNAP
  • 符号导数和积分

    我想集成功能f4关于x然后求新函数的导数t 我可以用数值方法计算积分 有没有办法在R中以符号方式计算这个积分和导数 lambda 1 ci 1 aa lt function u k t f4 lt function x f1 lt func
  • 如何让实验性 ngTemplateOutlet 发挥作用?

    我正在尝试在 Angular2 中构建一个列表组件 该组件从组件的用户那里获取项目 列和项目字段的模板 所以我正在尝试使用ngTemplateOutlet and ngOutletContext 我读过的都是实验性的 但我无法让它发挥作用
  • 使用 RXJava 和 Retrofit 获取标头信息

    我正在尝试将当前使用 Retrofit 的应用程序转换为使用 RX Java 为了处理分页 我传统上是从响应标头中获取 nextPage URL Override public void success Assignment assignm
  • 具有可选属性的 JSON 类型提供程序的数据示例

    我正在尝试使用 JSON 类型提供程序通过 API 访问 StackOverflow StackExchange 数据 它效果很好 但有一点需要注意 API 有一个节流阀 它由 退避 字段发出信号 其中包含您应该退避到下一个请求之前的秒数
  • Python 语音比较

    我有两个 wav 文件 我需要比较并确定它们是否包含相同的单词 顺序也相同 一段时间以来我一直在寻找最好的方法 我不知道如何让 pyspeech 使用文件作为输入 我尝试过让 CMU sphinx 项目正常工作 但我似乎无法让 GStrea
  • NGINX:“客户端在读取客户端请求行时发送了无效方法”

    为 Nginx 设置 SSL 并发出请求后 我收到带有神秘消息的乱码响应client sent invalid method while reading client request line 我在 Alpine Docker 容器中使用
  • 以编程方式获取 iOS 设备的 IMEI 或 UDID

    1 Apple 是否允许开发者检索用户设备的 IMEI 号码和 UDID 2 如何以编程方式获取这些值 3 如果 Apple 不允许开发人员收集 IMEI 号码 他们是否会为设备提供任何其他唯一号码 Apple 不再允许开发人员以编程方式获
  • 模板、内部结构、局部类型和纯虚函数,天哪

    考虑一个示例 其中方法是纯虚拟的 采用模板类型的参数 从外部类型注入 并且该模板类型是本地类型 在函数体中定义 这种情况会导致 g 下的编译时错误 诚然 这是一个相当极端的情况 但它确实源自真实的代码 这是一个可编译 可重现的示例 incl
  • 如何使用 Xcode 和 Git 处理不同的库搜索路径?

    我正在和朋友一起开发一个应用程序 我们使用 git 私有 作为版本控制系统 我们面临的问题是 Xcode 5 1 DP2 给出此警告 Apple Mach O 链接器警告 未找到目录 出现此警告的原因是 Xcode 在我的硬盘上找不到我朋友
  • 在原则 2 中指定表类型/存储引擎

    那么如何在原则 2 中指定用于给定实体的存储引擎呢 我正在创建一个需要全文索引的表 并且只有 MyISAM 存储引擎支持 MySQL 中的全文索引 另一方面 看起来 Doctrine 2 不支持开箱即用的全文索引 也没有全文搜索 那是对的吗
  • ColdFusion 变量竞争条件?

    我需要一些帮助来确定为什么这个特定的代码在极少数情况下会产生竞争条件 我找到了一个解决方案 我也会概述它 但我真的很想理解它 我们有一个基于 CMS 的系统 由许多松散地基于保险丝盒模型的模块组成 一切都通过单个index cfm 运行 在
  • 为 docker 容器提供可路由的 IP 地址

    我在 ubuntu 14 04 上运行它并且已经设置docker0到静态 IP 然后通过防火墙从公共 IP 路由到该静态 IP 我正在尝试将后端 API 设置为在 docker 容器中运行 但对一些事情感到困惑 1 我将如何映射docker