Как проложить маршрут в другой порт с помощью Zuul - PullRequest
2 голосов
/ 17 марта 2019

Я пытаюсь перенаправить все свои микросервисы на один маршрут с портом 8080 (магазин)

У меня есть микросервис articlemicroservice , который подключен к серверу Eureka (порт: 8084).).

У меня также есть zuulservice , подключенный к Eureka (работает на порту 8888).

Пример: http://localhost:8084/articles должен быть доступен на http://localhost:8080/articles

Я попытался настроить его в своем application.yml на моем сервере zuul, например:

eureka:
  client:
    serviceUrl:
      defaultZone: http://localhost:8888/eureka
server:
  port: 8079
zuul:
  routes:
    articlemicroservice:
      path: /*
      serviceId: articlemicroservice
      url: http://localhost:8080/

Важно: Магазин (порт: 8080) не подключен кEureka.

ArticleMicroService:

server.port=8084
spring.application.name=articlemicroservice

eureka.client.serviceUrl.defaultZone=http://localhost:8888/eureka/
eureka.client.fetchRegristry=true
eureka.instance.preferIpAddress=true

ShopMicroService:

server.port=8080
spring.application.name=shopmicroservice

Редактировать: Пример с yml не работал.

Редактировать:

Сервер Eureka:

server.port=8888
spring.application.name=eurekaserver

eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
eureka.client.service-url.defaultZone=http://localhost:8888/eureka/

eureka.instance.lease-expiration-duration-in-seconds:2

1 Ответ

1 голос
/ 01 июля 2019

Я думаю, что вам нужно одно GatewayApplication на порт 8080, это приложение будет прокси-запросы для других приложений, развернутых под любыми другими портами

  1. Запустите Zuulproxy на 8080
  2. Запустите ShopMicroService на ex. 8081
  3. Запустите ArticleMicroService на 8084
  4. Настройка маршрутов zuul, например:

    zuul:
      routes:
        articlemicroservice:
            path: /article/**
            url: http://localhost:8084/
        shopmicroservice:
            path: /shop/**
            url: http://localhost:8081/
    

потрясающий пример: https://github.com/sqshq/piggymetrics

ИЛИ Я думаю, что вы можете @EnableZuulProxy в ShopMicroService

zuul:
  routes:
    articlemicroservice:
      path: /article/**
      url: http://localhost:8084/

Я не думаю, что есть способ заставить ZUUL работать на 8079

...