【问题标题】:Make docker container only accessible from a certain IP使 docker 容器只能从某个 IP 访问
【发布时间】:2021-02-08 20:36:17
【问题描述】:

现在,当我将 docker 容器端口绑定到我计算机上的端口时,可以通过属于我计算机的每个 IP 地址访问它。

我知道这一点,因为我尝试使用我的 Docker 主机的静态 LAN ip 地址通过另一台计算机连接到端口。

我想限制该特定容器只能由我的 docker 主机(127.0.0.1 或 localhost)访问。当我将 Web 服务器的 IP 更改为 localhost 时,我的 docker 主机无法访问它(可能是因为这使它成为容器本地的,而不是主机)。

如何将 docker 容器创建到主机本地?

【问题讨论】:

    标签: docker docker-compose docker-networking


    【解决方案1】:

    如果你像这样运行容器,它只能从127.0.0.1访问

    docker run --rm -it -p 127.0.0.1:3333:80 httpd
    

    --rm:我用它来测试它在退出后删除容器。
    -it:交互式 tty。
    -p:端口映射,将主机上的 3333 映射到容器中的 80 和限制仅来自本地主机的访问。

    docker-compose 等效项是:

    services:
      db:
        ports:
          - "127.0.0.1:80:80"
    

    【讨论】:

    • 我将如何使用 docker-compose.yml 做同样的事情?
    • 我现在没有时间将其转换为 docker-compose,但这是解决方案的方向。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-07
    • 2017-07-12
    • 1970-01-01
    相关资源
    最近更新 更多