53 lines
1.8 KiB
Markdown
53 lines
1.8 KiB
Markdown
# KNGIL 로컬 실행 (Docker Compose)
|
|
|
|
## 빠른 시작
|
|
```bash
|
|
docker compose up -d --build
|
|
```
|
|
- 접속: `http://localhost:8080`
|
|
```bash
|
|
docker compose down
|
|
```
|
|
|
|
## 환경변수
|
|
`docker-compose.yml`에서 기본값을 사용하며, 필요 시 `.env`로 덮어쓸 수 있습니다.
|
|
|
|
- `DB_HOST` (기본값: `db`)
|
|
- `DB_PORT` (기본값: `5432`) - 웹 컨테이너가 DB에 접속할 때 사용하는 포트
|
|
- `DB_HOST_PORT` (기본값: `5432`) - 외부에서 포트포워딩으로 접속할 때 사용하는 호스트 포트
|
|
- `DB_NAME` (기본값: `kngil`)
|
|
- `DB_USER` (기본값: `postgres`)
|
|
- `DB_PASS` (기본값: `postgres`)
|
|
|
|
> 참고: `kngil_DB` 덤프가 `postgres` 소유자를 사용하므로, `DB_USER`를 변경하면 초기 복원에 실패할 수 있습니다.
|
|
|
|
### OIDC (선택)
|
|
로그인에서 OIDC를 사용하려면 아래 환경변수를 설정하세요.
|
|
|
|
- `OIDC_ISSUER`
|
|
- `OIDC_CLIENT_ID`
|
|
- `OIDC_CLIENT_SECRET`
|
|
- `OIDC_REDIRECT_URL`
|
|
- `OIDC_SCOPES` (예: `openid profile email`)
|
|
- `IDP_SERVICE_URL` (예: `https://idp.example.com`)
|
|
|
|
## DB 초기화
|
|
- `kngil_DB` 덤프는 **처음 실행 시** 자동으로 로드됩니다.
|
|
- 이미 생성된 볼륨이 있으면 재적용되지 않습니다. 다시 초기화하려면 아래를 실행하세요.
|
|
|
|
```bash
|
|
docker compose down -v
|
|
```
|
|
|
|
## 덤프 호환성
|
|
- `docker/initdb/01_kngil_DB.sql`는 PostgreSQL 16에서도 동작하도록 `transaction_timeout` 설정을 제거한 버전입니다.
|
|
- 원본 덤프는 `kngil_DB`에 그대로 보관됩니다.
|
|
|
|
## 기능 비활성화
|
|
- MySQL 의존 기능은 현재 제외했습니다.
|
|
- `kngil/bbs/sales_results.php`는 410 응답으로 비활성 처리되어 있습니다.
|
|
|
|
## PostgreSQL 이미지 버전
|
|
- 기본값은 `postgres:16`입니다.
|
|
- 이미지 풀 실패 시 `docker-compose.yml`의 태그를 사용 가능한 버전으로 변경하세요.
|