docker - 在 ubuntu 中限制在 docker 上运行的端口

标签 docker ubuntu

我有一个在 docker 容器内运行的服务器。服务器在端口 8080 上运行。我不想将此端口暴露给外部,而只想从内部访问。目前它可以从外部访问。我尝试了以下命令,但对我没有帮助。

sudo ufw deny 8080

有人能帮我吗?

最佳答案

有两种不同的机制直接涉及网络端口:公开和发布端口。

  • 您使用 EXPOSE 公开端口Dockerfile 中的关键字或
    --将标志暴露给 docker run。暴露端口是 way of documenting使用了哪些端口,但实际上并未映射或打开任何端口。
  • 您使用 --publish 发布帖子或 --publish-all-p标记到 docker run。这告诉 Docker 在容器的网络接口(interface)上打开哪些端口。

  • 因此,请检查您正在运行的命令以启动容器。由于您不想从外部访问容器,因此不应使用 -p .
    您可以引用下面的链接了解更多详情。
    https://docs.docker.com/engine/reference/commandline/run/#publish-or-expose-port--p---expose
    

    关于docker - 在 ubuntu 中限制在 docker 上运行的端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61930035/

    相关文章:

    android - UnsatisfiedLinkError : . ..:findLibrary 返回空

    c++ - 使用共享库在 Ubuntu 上部署 Qt 应用程序二进制文件

    linux - 无法使用 WSL 2 在 Ubuntu 上安装 hadolint

    docker - 如何输出或记录到 docker-compose 输出?

    java - Apache Kafka 生产者错误 : Failed to send message after 3 tries

    从崩溃的服务器中恢复 MySQL 表

    linux - 将 xva (citrix xenserver) 图像转换为 .img (vanilla xen) 图像

    docker - nexus3 docker 容器中的权限问题

    spring - InfluxDB docker镜像不适用于我的Spring Boot应用程序镜像

    logging - Ubuntu 14.04上的Docker守护程序日志在哪里?