diff --git a/Baron-SSO 개발환경 재구축(제로베이스) 재현 테스트 b/Baron-SSO 개발환경 재구축(제로베이스) 재현 테스트 new file mode 100644 index 0000000..8779333 --- /dev/null +++ b/Baron-SSO 개발환경 재구축(제로베이스) 재현 테스트 @@ -0,0 +1,210 @@ +# [재현테스트] Baron-SSO 제로베이스 개발환경 구축 및 연동 성공 보고 + +## 1. 작업 목적 + +팀장 요청에 따라 Baron-SSO 저장소만 제공된 상태에서 신규 개발 PC 환경을 구성하고 실제 서비스 기동 가능 여부를 재검증하였다. + +본 테스트는 기존 구축 과정에서 과도한 시간이 소요된 원인을 확인하고, 표준 구축 절차 기준의 실제 소요시간 및 문제 발생 여부를 확인하기 위함이다. + +--- + +# 2. 테스트 조건 + +## 시작 상태 + +### 로컬 PC + +```text +WSL 미설치 +Ubuntu 미설치 +Docker 미설치 +개발도구 미설치 +Baron-SSO 소스 없음 +``` + +### 제공 정보 + +```text +Gitea 저장소 주소만 제공 +``` + +```text +https://gitea.hmac.kr/baron/baron-sso.git +``` + +--- + +# 3. 작업 타임라인 + +| 시간 | 작업내용 | 결과 | +| ------------- | ------------------------ | -- | +| 10:20 ~ 10:25 | WSL 활성화 | 완료 | +| 10:25 ~ 10:27 | 재부팅 및 WSL 확인 | 완료 | +| 10:27 ~ 10:28 | Ubuntu 설치 | 완료 | +| 10:28 ~ 10:30 | apt update | 완료 | +| 10:30 ~ 10:31 | Git / Make / dos2unix 설치 | 완료 | +| 10:31 ~ 10:32 | 설치 검증 | 완료 | +| 10:32 ~ 10:36 | Docker Engine 설치 | 완료 | +| 10:36 ~ 10:38 | Docker 권한 설정 | 완료 | +| 10:38 ~ 10:40 | Docker 동작 검증 | 완료 | +| 10:40 ~ 10:45 | Baron-SSO Clone | 완료 | +| 10:45 ~ 10:47 | .env 생성 | 완료 | +| 10:47 ~ 10:49 | Auth Config 생성 | 완료 | +| 10:49 ~ 10:50 | Ory Config 생성 | 완료 | +| 10:50 ~ 10:54 | Ory Stack 기동 | 실패 | +| 10:54 ~ 11:05 | 오류 분석 | 완료 | +| 13:05 ~ 13:10 | Kratos 오류 분석 | 완료 | +| 13:10 ~ 13:15 | 팀장 보고 및 트러블 등록 | 완료 | +| 13:15 ~ 13:17 | 원본 보존 원칙 확정 | 완료 | +| 13:17 ~ 13:18 | 로컬 .env 수정 | 완료 | +| 13:18 ~ 13:20 | Ory Config 재생성 | 완료 | +| 13:20 ~ 13:21 | Kratos 설정 확인 | 완료 | +| 13:21 ~ 13:25 | Ory Stack 재기동 | 성공 | +| 13:25 ~ 13:28 | Baron App 기동 | 성공 | +| 13:28 ~ 13:32 | 전체 상태 확인 | 성공 | +| 13:32 ~ 13:35 | 로그인 화면 확인 | 성공 | + +--- + +# 4. 재현된 문제 + +## Kratos 초기 기동 실패 + +발생 로그 + +```text +selfservice.allowed_return_urls.12: [] + +expected string, but got array +``` + +--- + +# 5. 원인 분석 + +현재 저장소의 .env.sample + +```env +KRATOS_ALLOWED_RETURN_URLS_EXTRA=[] +``` + +설정 생성 후 Kratos 설정파일 + +```yaml +allowed_return_urls: + ... + - [] +``` + +생성됨. + +Kratos는 String 배열을 기대하지만 Array([])가 포함되어 초기 기동 실패. + +--- + +# 6. 조치 사항 + +원본 저장소는 수정하지 않음. + +로컬 실행용 .env만 수정. + +수정 전 + +```env +KRATOS_ALLOWED_RETURN_URLS_EXTRA=[] +``` + +수정 후 + +```env +KRATOS_ALLOWED_RETURN_URLS_EXTRA= +``` + +이후 + +```bash +make render-ory-config +make up-dev +``` + +재실행. + +--- + +# 7. 최종 결과 + +## Ory Stack + +```text +ory_postgres Healthy +ory_kratos Running +ory_hydra Running +ory_keto Running +ory_oathkeeper Running +``` + +--- + +## Baron Application + +```text +baron_gateway Healthy +baron_backend Healthy +baron_userfront Healthy +baron_adminfront Running +baron_devfront Running +baron_orgfront Running +``` + +--- + +## 접속 확인 + +접속 URL + +```text +http://localhost:5000 +``` + +결과 + +```text +Baron SW 포탈 로그인 화면 정상 표시 +``` + +--- + +# 8. 결론 + +이번 재현 테스트 결과, + +WSL / Ubuntu / Docker 설치 자체는 문제없이 진행되었다. + +그러나 현재 Gitea 저장소의 .env.sample 파일에 포함된 + +```env +KRATOS_ALLOWED_RETURN_URLS_EXTRA=[] +``` + +설정으로 인해 Kratos 초기 기동이 실패함을 재현하였다. + +따라서 현재 저장소는 "Clone 후 즉시 실행 가능 상태"는 아니며, .env.sample 또는 설정 생성 스크립트에 대한 개선이 필요하다. + +다만 로컬 실행용 설정 수정 후에는 Baron-SSO 전체 스택이 정상 기동되었으며, Gateway/UserFront/Backend 및 로그인 화면까지 정상 확인하였다. + +--- + +# 9. 다음 단계 + +기능 검증 수행 + +```text +1. 회원가입(Register) 테스트 +2. 로그인(Login) 테스트 +3. Kratos 인증 흐름 테스트 +4. Hydra OAuth/OIDC 테스트 +5. Backend API 테스트 +6. AdminFront 테스트 +7. DevFront 테스트 +8. OrgFront 테스트 +```