본문으로 건너뛰기

환경 설정

GenD 플랫폼의 환경 설정 체계를 안내합니다. 모든 설정은 환경 변수 기반으로 관리됩니다.

개요

GenD API는 Pydantic BaseSettings를 사용하며, 모든 환경 변수에 GEND_ 접두사를 적용합니다. K8s 환경에서는 ConfigMap과 Secret을 통해 주입하고, 로컬 개발에서는 .env 파일 또는 직접 환경 변수를 사용합니다.

설정 계층

우선순위 (높음 → 낮음)
1. 환경 변수 (GEND_*)
2. K8s Secret (secretKeyRef)
3. K8s ConfigMap (configMapKeyRef)
4. 코드 기본값 (config.py)

주요 설정 카테고리

카테고리설명참조
환경 변수GEND_ 접두사 전체 변수 목록환경 변수
TrinoFederation SQL 엔진 연결 및 리소스Trino 설정
Vault시크릿 암호화 및 Transit 엔진Vault 설정
CORS/TLS웹 보안 및 인증서 관리CORS/TLS
PostgreSQL TLS6 PG client verify-full (driver 별 패턴)PostgreSQL TLS

필수 설정 (기본값 없음)

다음 설정은 반드시 환경 변수 또는 K8s Secret으로 주입해야 합니다.

환경 변수설명
GEND_DATABASE_URLPostgreSQL 연결 문자열
GEND_ARANGODB_PASSWORDArangoDB 루트 비밀번호

설정 파일 위치

파일설명
apps/api/src/gend_api/config.pyAPI 설정 정의 (Settings 클래스)
infra/helm/trino/values.yamlTrino Helm 차트 값
infra/vault/vault-config.yamlVault 서버 구성
infra/keycloak/realm-export.jsonKeycloak Realm 구성

Relay 설정 (DMZ)

gend-relay는 env_prefix 없이 K8s ConfigMap 키를 직접 매핑합니다. API와 다른 설정 체계를 사용하므로 주의하세요.

관련 문서