Docker-Compose分配了我的容器的非相干IP

发布于 2025-02-08 12:42:53 字数 1550 浏览 0 评论 0原文

我的服务器上有几个容器,几乎使用相同的docker-composer.yaml文件:

version: '3.5'

services:

    myAppX:
        container_name: myprojectX
        build:
            context: .
            dockerfile: ./.docker/Dockerfile
        env_file: .env
        ports:
            - 8009:80
        volumes:
            - ${DIR_IMAGES_MAPS}:/app/public/maps

我注意到容器并不总是具有相同的IP:

docker inspect -f '{{.Id}};{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $(docker ps -q)

696fa33040be3c13f03e7f7697450d753dcb87aeff8629b2418b17a2b3d0baff;192.168.96.2
49ab637898ecb79e5b18a22e6d9466ab6f712960695046ba0c233437475cad3d;192.168.32.2
ba9912bb221b53f7b319430f1624a17a8d25ababb68854717e88026e448539fc;172.26.0.2
b21ad6f8bd9770de20edf55a07e3e2531d4a5d67f2cc15749146c16f27400263;172.25.0.2
4bb3b317e22fa96cef5e219a81909052a899fbc1a48401c63f292050ab3734a7;172.23.0.2
74df8ec521bbe08fcfc3851558349add7c4bead2314ee49e63f80a63d67420c6;172.22.0.2
35bbfe5d3e52a4b2ae5907e815a4cdbd0b7c4cd5ac21c348c8aa65d078ea892f;172.21.0.3
0f0ad718b5110f6ce8c4bd44a931f9ad10fc48d485bda9d6708767cf9ba486e9;172.21.0.4
5c590d55a128e69b256a92bff703c112db6f4bc9f2bbdb6c503f40afa24395d2;172.21.0.2
006269c383d5a424ba123abc1d54e802bf297542f623b6925002cbc365c16d85;172.20.0.2
5d13ed8352c833d18ee16aa7b9fec2604c600032bdcd8d10d9c94ea0faaca539;172.19.0.2

我不明白为什么两个第一个容器具有192个IP 。由于防火墙规则,我所有的容器都必须使用相同的IP(172.)!但是使用Composer V3,我再也无法定义静态IP!

我如何强制Docker始终具有相同的IP类型?

I have several containers on my server, and almost using the same docker-composer.yaml file :

version: '3.5'

services:

    myAppX:
        container_name: myprojectX
        build:
            context: .
            dockerfile: ./.docker/Dockerfile
        env_file: .env
        ports:
            - 8009:80
        volumes:
            - ${DIR_IMAGES_MAPS}:/app/public/maps

I've notice the containers don't always have the same IP :

docker inspect -f '{{.Id}};{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $(docker ps -q)

696fa33040be3c13f03e7f7697450d753dcb87aeff8629b2418b17a2b3d0baff;192.168.96.2
49ab637898ecb79e5b18a22e6d9466ab6f712960695046ba0c233437475cad3d;192.168.32.2
ba9912bb221b53f7b319430f1624a17a8d25ababb68854717e88026e448539fc;172.26.0.2
b21ad6f8bd9770de20edf55a07e3e2531d4a5d67f2cc15749146c16f27400263;172.25.0.2
4bb3b317e22fa96cef5e219a81909052a899fbc1a48401c63f292050ab3734a7;172.23.0.2
74df8ec521bbe08fcfc3851558349add7c4bead2314ee49e63f80a63d67420c6;172.22.0.2
35bbfe5d3e52a4b2ae5907e815a4cdbd0b7c4cd5ac21c348c8aa65d078ea892f;172.21.0.3
0f0ad718b5110f6ce8c4bd44a931f9ad10fc48d485bda9d6708767cf9ba486e9;172.21.0.4
5c590d55a128e69b256a92bff703c112db6f4bc9f2bbdb6c503f40afa24395d2;172.21.0.2
006269c383d5a424ba123abc1d54e802bf297542f623b6925002cbc365c16d85;172.20.0.2
5d13ed8352c833d18ee16aa7b9fec2604c600032bdcd8d10d9c94ea0faaca539;172.19.0.2

I don't get why the two first containers have an IP with 192. and not like the other with 172. ! All my containers have to use the same IP (172.) due to firewall rules ! But with Composer v3 I can no more define static IP !

How can I force docker to always have the same IP type ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

荒路情人 2025-02-15 12:42:53

edit(或创建)/etc/docker/daemon.json添加以下内容:

{
  "bip":"172.17.0.1/16"
}

然后重新启动Docker服务。

IP以1而不是0结束!也许Docker不想要口罩,但他需要第一个IP!

Edit (or create) /etc/docker/daemon.json and add this :

{
  "bip":"172.17.0.1/16"
}

Then restart docker service.

IP ends with 1 and not 0 ! Maybe Docker don't want a mask but he need the very first IP !

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文