Last active
March 30, 2026 09:57
-
-
Save mincong-h/0ec267f9f78f2edcea5cde4ba2ef334a to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| apiVersion: apps/v1 | |
| kind: Deployment | |
| metadata: | |
| name: config-server | |
| spec: | |
| replicas: 1 | |
| selector: | |
| matchLabels: | |
| app: config-server | |
| template: | |
| metadata: | |
| labels: | |
| app: config-server | |
| spec: | |
| containers: | |
| - name: config-server | |
| image: springcommunity/spring-petclinic-config-server | |
| env: | |
| - name: SPRING_PROFILES_ACTIVE | |
| value: kubernetes | |
| ports: | |
| - containerPort: 8888 | |
| resources: | |
| requests: | |
| cpu: 250m | |
| memory: 256Mi | |
| limits: | |
| cpu: 500m | |
| memory: 512Mi | |
| --- | |
| apiVersion: v1 | |
| kind: Service | |
| metadata: | |
| name: config-server | |
| spec: | |
| type: ClusterIP | |
| selector: | |
| app: config-server | |
| ports: | |
| - protocol: TCP | |
| port: 80 | |
| targetPort: 8888 | |
| --- | |
| apiVersion: v1 | |
| kind: ConfigMap | |
| metadata: | |
| name: api-gateway-config | |
| data: | |
| application.yml: | | |
| spring: | |
| application: | |
| name: api-gateway | |
| config: | |
| import: optional:configserver:http://config-server | |
| cloud: | |
| gateway: | |
| default-filters: | |
| - name: CircuitBreaker | |
| args: | |
| name: defaultCircuitBreaker | |
| fallbackUri: forward:/fallback | |
| - name: Retry | |
| args: | |
| retries: 1 | |
| statuses: SERVICE_UNAVAILABLE | |
| methods: POST | |
| routes: | |
| - id: vets-service | |
| uri: http://vets-service | |
| predicates: | |
| - Path=/api/vet/** | |
| filters: | |
| - StripPrefix=2 | |
| - id: visits-service | |
| uri: http://visits-service | |
| predicates: | |
| - Path=/api/visit/** | |
| filters: | |
| - StripPrefix=2 | |
| - id: customers-service | |
| uri: http://customers-service | |
| predicates: | |
| - Path=/api/customer/** | |
| filters: | |
| - StripPrefix=2 | |
| - id: genai-service | |
| uri: http://genai-service | |
| predicates: | |
| - Path=/api/genai/** | |
| filters: | |
| - StripPrefix=2 | |
| - CircuitBreaker=name=genaiCircuitBreaker,fallbackUri=/fallback | |
| --- | |
| apiVersion: apps/v1 | |
| kind: Deployment | |
| metadata: | |
| name: api-gateway | |
| spec: | |
| selector: | |
| matchLabels: | |
| app: api-gateway | |
| template: | |
| metadata: | |
| labels: | |
| app: api-gateway | |
| spec: | |
| containers: | |
| - name: main | |
| image: springcommunity/spring-petclinic-api-gateway | |
| env: | |
| - name: SPRING_CONFIG_LOCATION | |
| value: file:/workspace/config/application.yml | |
| - name: SPRING_PROFILES_ACTIVE | |
| value: kubernetes | |
| - name: LOGGING_LEVEL_ORG_SPRINGFRAMEWORK_CLOUD_GATEWAY | |
| value: "DEBUG" | |
| - name: LOGGING_LEVEL_ORG_SPRINGFRAMEWORK_WEB | |
| value: "DEBUG" | |
| - name: LOGGING_LEVEL_REACTOR_NETTY | |
| value: "DEBUG" | |
| resources: | |
| requests: | |
| cpu: 250m | |
| memory: 256Mi | |
| limits: | |
| cpu: 500m | |
| memory: 512Mi | |
| volumeMounts: | |
| - name: config-volume | |
| mountPath: /workspace/config # specific path for Spring application | |
| ports: | |
| - containerPort: 8080 | |
| volumes: | |
| - name: config-volume | |
| configMap: | |
| name: api-gateway-config | |
| --- | |
| apiVersion: v1 | |
| kind: Service | |
| metadata: | |
| name: api-gateway | |
| spec: | |
| type: ClusterIP | |
| selector: | |
| app: api-gateway | |
| ports: | |
| - protocol: TCP | |
| port: 80 | |
| targetPort: 8080 | |
| --- | |
| apiVersion: apps/v1 | |
| kind: Deployment | |
| metadata: | |
| name: customers-service | |
| spec: | |
| replicas: 1 | |
| selector: | |
| matchLabels: | |
| app: customers-service | |
| template: | |
| metadata: | |
| labels: | |
| app: customers-service | |
| spec: | |
| containers: | |
| - name: main | |
| image: springcommunity/spring-petclinic-customers-service | |
| env: | |
| - name: SPRING_PROFILES_ACTIVE | |
| value: kubernetes | |
| ports: | |
| - containerPort: 8081 | |
| resources: | |
| requests: | |
| cpu: 250m | |
| memory: 256Mi | |
| limits: | |
| cpu: 500m | |
| memory: 512Mi | |
| --- | |
| apiVersion: v1 | |
| kind: Service | |
| metadata: | |
| name: customers-service | |
| spec: | |
| type: ClusterIP | |
| selector: | |
| app: customers-service | |
| ports: | |
| - protocol: TCP | |
| port: 80 | |
| targetPort: 8081 | |
| --- | |
| apiVersion: apps/v1 | |
| kind: Deployment | |
| metadata: | |
| name: visits-service | |
| spec: | |
| selector: | |
| matchLabels: | |
| app: visits-service | |
| template: | |
| metadata: | |
| labels: | |
| app: visits-service | |
| spec: | |
| containers: | |
| - name: main | |
| image: springcommunity/spring-petclinic-visits-service | |
| env: | |
| - name: SPRING_PROFILES_ACTIVE | |
| value: kubernetes | |
| resources: | |
| requests: | |
| cpu: 250m | |
| memory: 256Mi | |
| limits: | |
| cpu: 500m | |
| memory: 512Mi | |
| ports: | |
| - containerPort: 8082 | |
| --- | |
| apiVersion: v1 | |
| kind: Service | |
| metadata: | |
| name: visits-service | |
| spec: | |
| type: ClusterIP | |
| selector: | |
| app: visits-service | |
| ports: | |
| - protocol: TCP | |
| port: 80 | |
| targetPort: 8082 | |
| --- | |
| apiVersion: apps/v1 | |
| kind: Deployment | |
| metadata: | |
| name: vets-service | |
| spec: | |
| selector: | |
| matchLabels: | |
| app: vets-service | |
| template: | |
| metadata: | |
| labels: | |
| app: vets-service | |
| spec: | |
| containers: | |
| - name: main | |
| image: springcommunity/spring-petclinic-vets-service | |
| env: | |
| - name: SPRING_PROFILES_ACTIVE | |
| value: kubernetes | |
| resources: | |
| requests: | |
| cpu: 250m | |
| memory: 256Mi | |
| limits: | |
| cpu: 500m | |
| memory: 512Mi | |
| ports: | |
| - containerPort: 8083 | |
| --- | |
| apiVersion: v1 | |
| kind: Service | |
| metadata: | |
| name: vets-service | |
| spec: | |
| type: ClusterIP | |
| selector: | |
| app: vets-service | |
| ports: | |
| - protocol: TCP | |
| port: 80 | |
| targetPort: 8083 | |
| --- | |
| apiVersion: apps/v1 | |
| kind: Deployment | |
| metadata: | |
| name: tracing-server | |
| spec: | |
| selector: | |
| matchLabels: | |
| app: tracing-server | |
| template: | |
| metadata: | |
| labels: | |
| app: tracing-server | |
| spec: | |
| containers: | |
| - name: main | |
| image: openzipkin/zipkin | |
| resources: | |
| requests: | |
| cpu: 250m | |
| memory: 256Mi | |
| limits: | |
| cpu: 500m | |
| memory: 512Mi | |
| ports: | |
| - containerPort: 9411 | |
| --- | |
| apiVersion: v1 | |
| kind: Service | |
| metadata: | |
| name: tracing-server | |
| spec: | |
| type: ClusterIP | |
| selector: | |
| app: tracing-server | |
| ports: | |
| - protocol: TCP | |
| port: 9411 | |
| targetPort: 9411 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment