Kotlin + Spring boot 기반의 백엔드 프로젝트입니다.
- JDK 17 (Amazon Corretto)
- Docker Desktop
- IDE (IntelliJ IDEA 권장)
git clone [email protected]:micro-lot/backend.git && cd backend
백그라운드 실행시 up -d
플래그 추가하여 실행
docker ... up -d
도커 컨테이너 실행 (초기 실행 또는 도커 설정 변경 시)
docker compose -f docker-compose.local.yml up --build
이후 실행
docker compose -f docker-compose.local.yml up
컨테이너 중지
docker compose -f docker-compose.local.yml down
컨테이너 및 볼륨 완전 제거
docker compose -f docker-compose.local.yml down -v
- Host: localhost
- Port: 5432
- Database: microlot
- Username: microlot
- Password: microlot
PostgreSQL CLI 접속
docker compose -f docker-compose.local.yml exec db psql -U microlot -d microlot
주요 PostgreSQL 명령어
\dt # 테이블 목록
\d 테이블명 # 테이블 구조 확인
\q # 종료
테스트 데이터 생성
curl -X POST -H "Content-Type: text/plain" -d "test-name" http://localhost:8080/api/test
데이터 조회
curl http://localhost:8080/api/test
.
├── docker/ # 도커 관련 설정
│ ├── local/ # 로컬 환경 도커 설정
│ ├── dev/ # 개발 서버 환경 도커 설정
│ └── prod/ # 운영 환경 도커 설정
├── src/
│ ├── main/
│ │ ├── kotlin/ # 소스 코드
│ │ └── resources/ # 설정 파일
│ └── test/ # 테스트 코드
├── docker-compose.local.yml
├── docker-compose.dev.yml
├── docker-compose.prod.yml
└── build.gradle.kts # 그래들 설정
애플리케이션 로그
docker compose -f docker-compose.local.yml logs -f app
데이터베이스 로그
docker compose -f docker-compose.local.yml logs -f db
-
데이터베이스 연결 오류
- 도커 컨테이너가 모두 실행 중인지 확인
- 포트 충돌 여부 확인 (5432)
-
빌드 오류
- Gradle 캐시 삭제:
./gradlew clean
- 도커 캐시 삭제:
docker builder prune
- Gradle 캐시 삭제:
- 소스 코드 변경 시 자동으로 반영됩니다 (핫 리로드)
- 의존성 변경 시 도커 이미지 재빌드가 필요합니다
- 데이터베이스 데이터는 도커 볼륨에 저장됩니다