【问题标题】:Docker: select ip of a containerDocker:选择容器的 ip
【发布时间】:2019-12-05 19:14:40
【问题描述】:

我正在做一个部署在 uwsgi 和 nginx 中的烧瓶应用程序。我的问题是,当我运行它时,它在 docker.internal.host 中运行,我需要指定主机。我想知道是否有某种方法可以创建一个 docker 网络,并在其中指定我将看到我的烧瓶应用程序的主机,或者以其他方式在特定 ip 中运行容器。

特定行为:

docker-compose up,然后当我转到我在 docker compose.yml 或我的网络配置中选择的 ip 时,我看到了我的烧瓶应用程序。

谢谢。

【问题讨论】:

  • 你可以在不玩 docker 的情况下做到这一点,也许只需使用 iptables 并将 IP 地址映射回你的本地主机 - 这可能会帮助 unix.stackexchange.com/a/441214/275922
  • 如果您的主机有多个 IP 地址,您可以在 Docker Compose ports: 设置或 docker run -p 选项中指定一个特定的地址,docker run -p 10.20.30.40:8000:80 是您主机的 IP 地址之一。跨度>

标签: docker docker-compose


【解决方案1】:

你可以这样做:

services:
  srv:
    image: image:latest
    command: start
    networks:
        mynet:
            ipv4_address: 192.168.42.11
networks:
  mynet:
    ipam:
        config:
            - subnet: 192.168.42.0/24

但它仅适用于 linux 和运行 docker 的主机。您应该考虑端口映射或主机网络模式是否适合您。 检查这个:https://docs.docker.com/compose/networking/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多