Conversation
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (8)
📝 WalkthroughWalkthrough로컬 개발 환경에서 OpenSQL-PG 기반 PostgreSQL을 Docker Compose로 실행하도록 구성이 변경되었습니다. Changes로컬 DB 개발 환경 설정
Estimated code review effort: 2 (Simple) | ~12 minutes Sequence Diagram(s)sequenceDiagram
participant Developer
participant DockerCompose
participant PostgresContainer
participant SpringBoot
Developer->>DockerCompose: docker compose up -d (.env 기반)
DockerCompose->>PostgresContainer: opensql/postgres:14.6 컨테이너 생성 및 vars.yml 적용
PostgresContainer-->>DockerCompose: healthy 상태 보고
Developer->>SpringBoot: gradlew bootRun (local profile)
SpringBoot->>PostgresContainer: DB_HOST/PORT/USER/PASSWORD로 접속
PostgresContainer-->>SpringBoot: 연결 성공
SpringBoot->>PostgresContainer: Flyway 마이그레이션 실행 (app_health_checks 생성)
버그·성능·클린코드 관점 코멘트: 하드코딩된 자격증명이 환경변수로 옮겨진 점, sslmode=require와 hikari 풀 파라미터 추가는 운영 안정성 측면에서 긍정적입니다. 다만 vars.yml에 평문 비밀번호(pg_superuser_password)가 커밋되어 있는지 확인이 필요하며, 로컬 전용이라도 Poem — 🐇
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
🔍️ 작업 내용
Closes #3
DB 관련 로컬 개발 환경 설정만 추가했습니다.
tmaxopensql/postgres:14.6기반으로 정리local-opensql, host port를55432, volume을opensql_data로 설정docker/opensql/vars.yml추가localprofile datasource를DB_*환경변수 기반으로 유지하고 OpenSQL-PG SSL host 연결을 위해sslmode=require적용.env.example,docs/local-db.md,README.md에 로컬 DB 실행 가이드 추가변경 파일 목록
.env.exampledocker-compose.ymldocker/opensql/vars.ymlsrc/main/resources/application-local.ymlsrc/main/resources/db/migration/V1__init_schema.sqldocs/local-db.mdREADME.mdsrc/main/resources/db/migration/V1__init.sql삭제로컬 DB 실행 방법
DB 기본 접속 정보:
localhost55432appapplocal_passwordpublicjdbc:postgresql://localhost:55432/app?currentSchema=public&sslmode=requireSpring Boot local profile 실행 방법
./gradlew bootRun --args='--spring.profiles.active=local'Flyway 적용 결과
src/main/resources/db/migration/V1__init_schema.sqlapp_health_checkslocal-db-ready확인 쿼리:
결과:
OpenSQL 공식 이미지 사용 여부
tmaxopensql/postgres:14.6jdbc:postgresql://...를 유지했습니다.PostgreSQL fallback 사용 여부
실행한 검증 명령어와 결과
docker.io/tmaxopensql/postgres:14.6pull 완료tmaxopensql/postgres:14.6, containerlocal-opensql, host port55432, volumeopensql_data, healthcheck 확인local-opensql컨테이너 시작local-opensqlhealthy 확인./gradlew test./gradlew bootRun --args='--spring.profiles.active=local'Successfully validated 1 migration, schemapublicversion1남은 TODO
DB_*환경변수 값만 교체Summary by CodeRabbit