У меня есть два образа докера, один сервер отдыха (flaskapp
) и другой веб-сервер (web
).Я пытаюсь запустить их, используя docker-compose
.
Однако кажется, что веб-контейнер не может связаться с контейнером отдыха
Ниже приведен мой файл docker-compose.yml
:
version: '3'
services:
flaskapp:
build: ./rest_server
restart: always
networks:
- docker_network
expose:
- 5001
web:
build: ./web
restart: always
ports:
- 3002:3000
depends_on:
- flaskapp
networks:
- docker_network
healthcheck:
test: ["CMD", "curl", "-f", "http://flaskapp:5001/todos"]
networks:
docker_network:
driver: bridge
Мое веб-приложение ссылается на следующий URL:
http://flaskapp:5001/todos
Однако, если я войду в докер-контейнер с помощью docker exec -it <id> /bin/bash
ивыполнить следующую команду, я получаю ответ json, который я ожидаю.
curl http://flaskapp:5001/todos
Я также могу выставить порт своего сервера отдыха и затем изменить адрес сервера отдыха на localhost на веб-сервере, и это решит проблемуОднако это не то, что я хотел бы.
Я не хочу выставлять мой сервер отдыха на хост-машине.