gpt4 book ai didi

docker - 如何在不重新启动的情况下更改 docker 容器的源代码?

转载 作者:行者123 更新时间:2023-12-02 03:19:19 24 4
gpt4 key购买 nike

我有一个应用程序,我在其中使用了两个 docker 容器。假设容器 A 和 B。现在 B 依赖于 A。所以当我启动容器“B”时,我确实在命令行中提到了容器“A”的 IP 地址。

现在我在容器“A”中有一个代码更改。如果我必须在更改源代码后重新启动容器“A”,那么在重新启动 A 的 IP 地址后将更改。因此,容器“B”将失去与“A”的连接,我必须使用“A”的新 IP 地址重新启动“B”。

是否有任何 docker 方法可以让我始终为容器“A”保留 IP 地址?或者我可以在不重新启动容器“A”的情况下更改代码?
请建议。

最佳答案

您需要像 这样的服务发现。 consul , 结合 registrator 为了记录A (领事)每次开始。

然后B可以查询 consul 以获得 A最新的 IP 地址。

见“Automatic Docker Service Announcement with Registrator

如果您的容器不是由同一个 docker 守护进程管理的(意味着您处于多主机多节点环境中),您可以使用 docker swarm (仍与 consul 一起使用):

  • "Deploying Containers with Docker Swarm and Docker Networking "
  • "Atlassian Orchestration with Docker: multi-host support for the win! "
  • 关于docker - 如何在不重新启动的情况下更改 docker 容器的源代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34541271/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com