无法在 Docker Compose 设置中访问端口 4001

问题描述 投票:0回答:1

我的应用程序有一个 Docker Compose 设置,特别关注名为 myhome-api-dev 的服务。但是,我在使用 GCP 虚拟机的外部 IP 访问此服务的端口 4001 时遇到了困难。尽管尝试使用 ufw 和其他方法打开端口,但我仍然面临连接问题。

这是我的 myhome-api-dev 服务的 Docker Compose 配置:

services:
  myhome-api-dev:
    container_name: myhome-api-dev
    build:
      context: ./
      dockerfile: Dockerfile
    restart: always
    logging:
      options:
        max-size: "50m"
        max-file: "3"
    ports:
      - "4001:4001"
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.myhome-api.rule=Host(`$HOST`)"
      - "traefik.http.routers.myhome-api.entrypoints=websecure"
      - "traefik.http.routers.myhome-api.tls=true"
      - "traefik.http.routers.myhome-api.tls.certresolver=myresolver"
      - "traefik.http.services.myhome-api.loadbalancer.server.port=80"
    env_file:
      .env
    volumes:
      - "./src:/usr/src/app/src"
      - "./types:/usr/src/app/types"
    networks:
      - docker_net

尽管配置了端口映射 (4001:4001)、启用 traefik 并确保防火墙设置 (ufw),但尝试使用外部 IP 访问端口 4001 失败。

以下是我迄今为止采取的步骤:

配置 Docker Compose 以公开端口 4001。 启用 traefik 以进行路由和负载平衡。 安装并配置 ufw 以使用入站规则打开端口 8000(也尝试了端口 4001)。 已验证 Docker 容器正在运行并且可以在内部访问。 但是,使用服务器的外部IP对端口4001进行外部访问会导致连接超时或拒绝。

任何有关如何排查和解决此连接问题的见解或建议将不胜感激。谢谢!

google-cloud-platform networking docker-compose firewall traefik
1个回答
0
投票

您很可能必须配置 GCP 防火墙以允许端口 4001 上的传入流量。

© www.soinside.com 2019 - 2024. All rights reserved.