首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在同一个Docker网络中发出HTTP请求

在同一个Docker网络中发出HTTP请求
EN

Stack Overflow用户
提问于 2020-03-16 03:29:34
回答 1查看 285关注 0票数 0

我有几个服务运行在不同的码头集装箱中,按照我的码头组合:

代码语言:javascript
复制
version: '3'
services:
  rest:
    build:
      context: './service/'
    image: persian_rest:latest
    container_name: persian_rest
    ports:
      - 8080:8080
    networks:
      - persian_net
    volumes:
      - persian_volume:/data
  scheduler:
    build:
      context: './scheduler/'
    image: persian_scheduler:latest
    container_name: persian_scheduler
    networks:
      - persian_net
  ui:
    build:
      context: './ui/'
    image: persian_ui:latest
    container_name: persian_ui
    ports:
      - 5000:5000
    networks:
      - persian_net
  database:
    image: 'mongo:latest'
    container_name: 'persian_database'
    networks:
      - persian_net
    environment:
      - MONGO_INITDB_ROOT_USERNAME=persian_admin
      - MONGO_INITDB_ROOT_PASSWORD=123456
    ports:
      - 27017:27017
    volumes:
      - persian_volume:/data
volumes:
  persian_volume:
networks:
  persian_net:
    driver: bridge

我的UI persian_ui服务向REST服务persian_rest发出HTTP请求。我想既然他们在同一个网络里,我就会向http://persian_rest:8080/api提出一个请求

但是,当我提出该请求时,它无法找到该资源:

有谁知道为什么我的容器在同一个网络中无法执行请求呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-16 03:56:47

目前,您正在本地主机上查看一个网页:5000。您从服务器localhost:5000请求网页,它进行了修改,并向您发送了一个网页,该网页现在位于您的计算机上。

如果您现在希望访问与网页相同的服务器上的API,则可以向本地主机发出另一个请求,但这次是端口8080。本地主机:8080/api。

浏览器中的网页位于客户端,您给出的容器的名称在服务器内部供参考。从服务器外部,当前引用是本地主机。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60699999

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档