-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
49 lines (44 loc) · 2.83 KB
/
Copy path.env.example
File metadata and controls
49 lines (44 loc) · 2.83 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# cp .env.example .env 후 값을 채운다. .env는 커밋되지 않는다.
# 이 파일에는 키 이름만 둔다. 실제 자격증명을 적지 않는다.
# --- Docker Compose (PostgreSQL / Redis) ---
POSTGRES_DB=pinlog
POSTGRES_USER=pinlog
POSTGRES_PASSWORD=pinlog-local
POSTGRES_PORT=15432
REDIS_PORT=16379
# --- 소셜 로그인 자격증명 ---
# 운영에서는 Kubernetes Secret으로 주입한다(configuration.md).
#
# 쓸 공급자만 주석을 풀고 값을 채운다. 빈 값으로 두면 안 된다 —
# application.yml이 이 파일을 프로퍼티로 올리므로(spring.config.import), KAKAO_CLIENT_ID=
# 처럼 정의만 하면 프로퍼티가 "없음"이 아니라 "빈 문자열"이 되어 기본값(unset)이 적용되지
# 않는다. 그러면 "Client id of registration 'kakao' must not be empty"로 기동이 실패한다.
#GOOGLE_CLIENT_ID=
#GOOGLE_CLIENT_SECRET=
#KAKAO_CLIENT_ID=
#KAKAO_CLIENT_SECRET=
#NAVER_CLIENT_ID=
#NAVER_CLIENT_SECRET=
# --- 세션 서명 키 ---
# 운영 필수, 로컬은 선택이다(configuration.md). 주지 않으면 기동할 때 임시 키쌍을 만들고
# 경고를 남긴다 — 대신 재시작마다 기존 토큰이 무효가 되어 다시 로그인해야 한다.
# 고정하려면 키를 만들어 넣는다. PEM은 커밋하지 않는다.
#
# openssl genpkey -algorithm RSA -pkeyopt rsa_keygen_bits:2048 -out jwt-local.pem
#
# 값은 한 줄로 접고 개행을 \n으로 적는다 — properties 파서가 실제 개행으로 되돌린다.
# 따옴표로 감싸지 않는다. 이 파일은 properties로 파싱되므로 따옴표가 값의 일부가 되고,
# 그 문자는 공백이 아니라서 PEM 정리 과정에서도 살아남아 base64 디코딩이 깨진다.
# 반대로 운영 Secret에는 \n이 아니라 실제 개행이 들어간 원문을 넣는다(back#105).
#JWT_PRIVATE_KEY=-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----
# --- AI 연동 ---
# AI 파트와 공유하는 시크릿이며 양쪽 값이 같아야 한다. 없으면 FastAPI가 모든 호출을 401로
# 거절하는데 그 실패는 삼켜진다 — 임베딩·키워드가 조용히 생성되지 않고 검색은 503이 된다.
#PINLOG_AI_INTERNAL_SECRET=
# 위 두 값은 소셜 로그인 자격증명과 달리 빈 값으로 둬도 기동이 깨지지 않는다 — 기본값이
# 빈 문자열이라 "정의했지만 비었다"와 "정의하지 않았다"가 같은 결과(임시 키·경고 후 진행)로
# 수렴한다. 그래도 쓰지 않을 값은 정의하지 않는 편이 낫다.
#
# PINLOG_AI_BASE_URL과 PINLOG_AI_EMBEDDING_PROFILE은 여기 두지 않는다. 앞은 로컬 기본값
# (http://localhost:8000)이 정답이고, 뒤는 비밀이 아니라 일부러 application.yml에 리터럴로
# 박아 교체가 PR·리뷰를 거치게 한 값이다(BD-39). 환경변수는 실험·롤백용 덮어쓰기다.