我有几个服务运行在不同的码头集装箱中,按照我的码头组合:
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提出一个请求
但是,当我提出该请求时,它无法找到该资源:

有谁知道为什么我的容器在同一个网络中无法执行请求呢?
发布于 2020-03-16 03:56:47
目前,您正在本地主机上查看一个网页:5000。您从服务器localhost:5000请求网页,它进行了修改,并向您发送了一个网页,该网页现在位于您的计算机上。
如果您现在希望访问与网页相同的服务器上的API,则可以向本地主机发出另一个请求,但这次是端口8080。本地主机:8080/api。
浏览器中的网页位于客户端,您给出的容器的名称在服务器内部供参考。从服务器外部,当前引用是本地主机。
https://stackoverflow.com/questions/60699999
复制相似问题