feat: add actuator and Consul discovery to rag-service
This commit is contained in:
@@ -6,12 +6,11 @@
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-parent</artifactId>
|
||||
<version>3.5.7</version>
|
||||
<relativePath/> <!-- lookup parent from repository -->
|
||||
<relativePath/>
|
||||
</parent>
|
||||
<groupId>com.balex</groupId>
|
||||
<artifactId>rag</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
<name>rag</name>
|
||||
<description>Backend for queries to RAG</description>
|
||||
<url/>
|
||||
<licenses>
|
||||
@@ -29,6 +28,7 @@
|
||||
<properties>
|
||||
<java.version>25</java.version>
|
||||
<spring-ai.version>1.0.3</spring-ai.version>
|
||||
<spring-cloud.version>2025.0.0</spring-cloud.version>
|
||||
<lombok-mapstruct-binding.version>0.2.0</lombok-mapstruct-binding.version>
|
||||
</properties>
|
||||
<dependencies>
|
||||
@@ -40,6 +40,16 @@
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-validation</artifactId>
|
||||
</dependency>
|
||||
<!-- Actuator for health checks and Consul registration -->
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-actuator</artifactId>
|
||||
</dependency>
|
||||
<!-- Consul service discovery -->
|
||||
<dependency>
|
||||
<groupId>org.springframework.cloud</groupId>
|
||||
<artifactId>spring-cloud-starter-consul-discovery</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.commons</groupId>
|
||||
<artifactId>commons-lang3</artifactId>
|
||||
@@ -160,6 +170,13 @@
|
||||
<type>pom</type>
|
||||
<scope>import</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.cloud</groupId>
|
||||
<artifactId>spring-cloud-dependencies</artifactId>
|
||||
<version>${spring-cloud.version}</version>
|
||||
<type>pom</type>
|
||||
<scope>import</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</dependencyManagement>
|
||||
|
||||
|
||||
@@ -5,11 +5,21 @@ spring.ai.openai.base-url=${SPRING_AI_OPENAI_BASE_URL:https://api.groq.com/opena
|
||||
spring.ai.openai.api-key=${SPRING_AI_OPENAI_API_KEY:}
|
||||
spring.ai.openai.chat.model=${SPRING_AI_OPENAI_CHAT_MODEL:llama-3.3-70b-versatile}
|
||||
|
||||
# --- Embedding model: use local pgvector with a lightweight model ---
|
||||
# Groq does not provide an embedding endpoint, so we disable OpenAI embedding auto-config
|
||||
# and rely on the pgvector store's existing embedding setup
|
||||
# --- Embedding model: local ONNX (Groq has no embedding API) ---
|
||||
spring.ai.openai.embedding.enabled=false
|
||||
|
||||
# --- Consul service discovery ---
|
||||
spring.cloud.consul.host=${SPRING_CLOUD_CONSUL_HOST:localhost}
|
||||
spring.cloud.consul.port=${SPRING_CLOUD_CONSUL_PORT:8500}
|
||||
spring.cloud.consul.discovery.service-name=rag-service
|
||||
spring.cloud.consul.discovery.instance-id=${spring.application.name}-${random.value}
|
||||
spring.cloud.consul.discovery.prefer-ip-address=true
|
||||
spring.cloud.consul.discovery.health-check-interval=10s
|
||||
|
||||
# --- Actuator ---
|
||||
management.endpoints.web.exposure.include=health,info
|
||||
management.endpoint.health.show-details=always
|
||||
|
||||
jwt.secret=${JWT_SECRET:ywfI6dBznYmHbokihB/OBzZz6E0Fj+6PiqrM8dQ5c3t0HeYarblCbOGM8vQtOt472AtQ+MsCH7OVIKHOzjrPsQ==}
|
||||
jwt.expiration=103600000
|
||||
spring.datasource.url=${SPRING_DATASOURCE_URL:jdbc:postgresql://localhost:5432/ragdb}
|
||||
|
||||
Reference in New Issue
Block a user