Test Center
Math / English / Music 시험 문항을 AI로 생성하고, 응시·채점·결과 관리까지 제공하는 시험 플랫폼입니다. Docker 이미지 하나로 설치하고, auth.freeitm.com과 같은 OIDC 인증 서버에 연결해 바로 운영할 수 있습니다.
설치 방법
이미지를 불러온 뒤, 필요한 환경변수를 지정해 컨테이너를 실행합니다.
docker load < testcenter-image.tar.gz docker run -d --name testcenter -p 4040:4040 \ -e PORT=4040 \ -e PG_HOST=127.0.0.1 -e PG_PORT=5432 \ -e PG_USER=testcenter -e PG_PASSWORD=<비밀번호> -e PG_DATABASE=testcenter \ -e OIDC_ISSUER=https://auth.freeitm.com \ -e OIDC_CLIENT_ID=<클라이언트ID> -e OIDC_CLIENT_SECRET=<클라이언트시크릿> \ -e OIDC_REDIRECT_URI=https://your-domain.example/api/v1/auth/callback \ -e OIDC_POST_LOGOUT_REDIRECT_URI=https://your-domain.example/login \ testcenter:latest
PostgreSQL 16 인스턴스가 별도로 필요합니다(PG_* 환경변수로 접속 정보를
지정). 테이블은 컨테이너가 처음 시작할 때 자동으로 생성됩니다.
필수 환경변수
| 변수 | 설명 |
|---|---|
| PORT | 애플리케이션이 수신할 포트(기본 4040) |
| PG_HOST / PG_PORT / PG_USER / PG_PASSWORD / PG_DATABASE | 애플리케이션 자체 데이터(문항/시험결과/캘린더 등) 저장용 PostgreSQL 접속 정보 |
| OIDC_ISSUER | 연결할 OIDC 인증 서버 주소(예: https://auth.freeitm.com) |
| OIDC_CLIENT_ID / OIDC_CLIENT_SECRET | 인증 서버에 등록한 클라이언트 자격증명 |
| OIDC_REDIRECT_URI / OIDC_POST_LOGOUT_REDIRECT_URI | 로그인/로그아웃 후 돌아올 이 애플리케이션의 URL |
auth.freeitm.com 연동 방법
Test Center는 자체 로그인 화면 없이, OIDC 인증 서버에 로그인을 위임합니다. auth.freeitm.com을 인증 서버로 사용하려면 다음 순서로 연결합니다.
- auth.freeitm.com 운영자에게 새 OIDC 클라이언트 등록을 요청합니다(client_id, client_secret,
redirect_uris에 설치할 도메인의
/api/v1/auth/callback을 등록). - 발급받은 client_id/client_secret을 위 설치 명령의
OIDC_CLIENT_ID/OIDC_CLIENT_SECRET에 채웁니다. OIDC_ISSUER=https://auth.freeitm.com으로 지정하면, 로그인 시 자동으로 auth.freeitm.com으로 이동해 인증한 뒤 돌아옵니다.
라이브 데모
실제로 설치·연동해 운영 중인 인스턴스를 exam.minsday.com에서 확인할 수 있습니다.