docker-compose - docker compose 不暴露端口

标签 docker-compose

我有一个自己工作的 dockerfile,用

docker build -t image_apache .
docker run -tid -p 5000:80 --name=container_apache image_apache

这有效,我可以使用 127.0.0.1:5000 连接到它的网络服务器

但是当我尝试创建一个 docker-compose.yml 文件以使用 docker-compose 构建和运行图像时,它似乎根本没有暴露端口。

这是 docker-compose.yaml

version: '3'

services:
  deploy_test:
    ports:
      - "8080:80"
    build: .
    working_dir: /tmp/artifacts

docker-compose build
docker-compose run deploy_test

我的浏览器无法连接到 127.0.0.1:8080,并且容器中的 apache 日志没有显示任何尝试。

我的端口语法有问题吗?它匹配在线示例。

最佳答案

请尝试使用 docker-compose run -p 8080:80 deploy_test 作为 run 命令本身无法公开/发布端口,即您需要手动指定它。更多相关信息请引用其官方文档here .

关于docker-compose - docker compose 不暴露端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67974976/

相关文章:

hibernate - 如何配置 Hibernate ORM 数据库属性以与 Docker 一起使用

python - 如何在 nginx docker 和 uwsgi docker 之间共享 .sock 文件?

docker - Web API端点可与docker-compose.yml一起使用,但不适用于仅使用Dockerfile进行构建和运行的情况

docker - 健康检查 - 网络

docker - 错误 : 2 matches found based on name: network <nameofservice>_default is ambiguous

javascript - docker-compose 仅​​运行我的 mongodb 服务器但不运行我的 js 文件

Docker compose - 构建顺序,数据库在应用程序之前

docker - 在 Docker for Windows 上的 Kubernetes 上部署 docker-compose 应用程序

docker - 使用 docker-compose 添加额外的节点到 Node-RED

docker - 无法使用ENTRYPOINT Docker运行script.sh