1

我正在尝试使用 Gitlab 存储库制作 ConfigServer 远程和客户端。ConfigServer 通过 Webhook 接收推送通知,但不会将消息发送到客户端。我用 Docker 运行了一个 RabbitMQ,我可以在 rabbit 的控制台中看到服务与它相连。所以我不知道是什么问题。

configServer pom 文件如下所示:

<dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-config-server</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-config-monitor</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-stream-rabbit</artifactId>
</dependency>

ConfigServes 的属性文件如下所示:

server.port:8888
spring.cloud.config.server.git.uri:https://gitlab.com/user/repo-properties.git

spring.cloud.config.server.git.username:user
spring.cloud.config.server.git.password:pass

spring.rabbitmq.host:172.17.0.1
spring.rabbitmq.port:5672
spring.rabbitmq.username:guest
spring.rabbitmq.password:guest

spring.cloud.bus.enabled:true

management.security.enabled:false
spring.cloud.config.server.monitor.gitlab.enabled:true

spring.profiles.active:desa

客户端的 pom 看起来像:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-bus-amqp</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

客户端的 application.yml 看起来像:

spring:
  rabbitmq:
    host: 172.17.0.1
    port: 5672
    username: guest
    password: guest

  application:
    name: user-server-config
  cloud:
    config:
      uri: http://localhost:8888
  profiles:
    active: desa

我用 Docker 运行兔子: sudo docker run --name rabbitmq -p 5672:5672 rabbitmq

我在 Gitlab 中创建了一个 Webhooks。当推送更改时,ConfigServer 会收到 /monitor 的通知,但客户端没有收到更改,也没有收到任何内容。我不知道如何解决这个问题。

谢谢!

4

0 回答 0