beaniejoy / dongne-cafe-api

☕️ kotlin & spring boot application (toy project) / siren order service for local cafe
2 stars 1 forks source link

Vault 환경 구성 #60

Closed beaniejoy closed 1 year ago

beaniejoy commented 1 year ago

Todo

  1. local 환경 Vault 서버 구성 > X
  2. cloud server에 Vault 서버 구성해보기
  3. 버전 호환 문제로 spring boot version 3.x으로 migration 진행해보기


setting

gradle 설정

현재 spring boot, spring cloud 간에 version 호환성 이슈 존재
(spring boot 2.7.x 버전 > spring cloud starter 3.1.3 버전 우선 사용)

implementation("org.springframework.cloud:spring-cloud-starter-vault-config:3.1.3")

yaml 설정

spring:
  cloud:
    vault:
      uri: # vault domain uri (port: 8200)
      authentication: TOKEN
      token: # vault root token
      kv:
        backend: secret
        application-name: dongne
        default-context:
        profiles: ${spring.profiles.active}

특이사항이 있다.

spring:
  config:
    activate:
      on-profile: local
    import:
      - optional:file:./env/.env.${spring.profiles.active}[.properties]
      - optional:vault://

이렇게 하면 env 파일에 있는 VAULT_DOMAIN_ADDR 데이터를 가져오지 못한다.

Illegal character in path at index 1: ${VAULT_DOMAIN_ADDR}

optional을 빼도 env 파일 가져오는 것에는 에러가 발생하진 않지만 env 파일 가져오는 시점이 vault 활성화되는 시점하고 다른 듯 보이는데 잘 모르겠다.

References

beaniejoy commented 1 year ago

블로그 작성