У меня есть несколько микроуслуг, построенных с использованием Spring boot, которые
- Обнаружение служб
- Шлюз или Прокси-сервер Zuul
- Бэкэнд-приложение, которое обслуживаетAPI REST
Следующее является частью файла docker-compose.yml
version: '3.7'
services:
st-service-registry:
build:
context: service-registry/
args:
VERSION: ${VERSION}
restart: on-failure
image: st/service-registry:${VERSION}
container_name: st-service-registry
ports:
- 8180:8180
tty: true
networks:
- st-network
st-backend:
build:
context: backend/
args:
VERSION: ${VERSION}
restart: on-failure
image: st/backend:${VERSION}
environment:
eureka.client.serviceUrl.defaultZone: http://st-service-registry:8180/eureka
depends_on:
- mongo
- redis
- st-service-registry
- st-gateway-server
volumes:
- /etc/timezone:/etc/timezone
- /etc/localtime:/etc/localtime
networks:
- st-network
st-gateway-server:
build:
context: gateway-server/
args:
VERSION: ${VERSION}
restart: on-failure
image: st/gateway-server:${VERSION}
container_name: st-gateway-server
ports:
- 8080:8080
depends_on:
- st-service-registry
networks:
- st-network
mongo:
image: mongo
container_name: mongo
ports:
- 27017:27017
volumes:
- ${MONGO_DB_DATA_LOCATION}:/data/db
restart: on-failure
networks:
- st-network
redis:
image: redis
container_name: redis
ports:
- 6379:6379
restart: on-failure
networks:
- st-network
networks:
st-network:
driver: bridge
Когда я запускаю весь стек, используя docker-compose up --build
, все работает отлично.Я могу видеть изображения докера, и я могу запустить микросервисы и тому подобное.Но когда я пытаюсь запустить отдельные образы, используя docker run -itd -p 8080:8080 _image_Id_
, микросервис не может подключиться к реестру служб.Там написано: Отказ в соединении
Ребята, есть ли у вас какие-либо соображения по этому поводу?Дайте мне знать, если вам нужна другая информация.Заранее спасибо.