본문으로 건너뛰기

Quickstart

노트북에서 약 5분 만에 TRUSCA를 실행합니다. 본 페이지는 데이터가 채워진 대시보드를 곧바로 보여주고, 5단계에서 실제 저장소의 첫 스캔까지 이어집니다. 프로덕션 배포는 Docker Compose 설치 또는 Helm 차트를 참고하십시오.

사전 조건

  • Docker + docker-compose(V1, 하이픈). V2 플러그인도 동작합니다.
  • 여유 자원 4 vCPU / 8 GB RAM, 디스크 10 GB.

1. 스택 기동

레포지토리를 클론하고 env 파일을 생성합니다.

git clone https://github.com/trustedoss/trusca.git
cd trusca
cp .env.example .env

dev 이미지는 uvicorn --reload를 직접 실행하므로 — 프로덕션 이미지와 달리 — 부팅 시 마이그레이션을 자동 적용하지 않습니다. 스키마를 먼저 생성해야 backend가 기동 즉시 healthy가 됩니다(아니면 health 게이트가 걸린 celery-workerup을 막습니다).

docker-compose -f docker-compose.dev.yml run --rm backend alembic upgrade head

이어서 전체 스택을 기동합니다.

docker-compose -f docker-compose.dev.yml up -d

스키마가 이미 적용돼 있어 약 30초 안에 postgres, redis, backend, celery-worker, frontend 컨테이너가 모두 healthy 상태가 됩니다 (docker-compose -f docker-compose.dev.yml ps).

2. 데모 데이터 시드

docker-compose -f docker-compose.dev.yml exec backend \
python -m scripts.seed_demo --demo-only

조직 1개, 팀 3개, 사용자 5명, 프로젝트 5개, 그리고 현실적인 CVE·라이선스 finding·의무사항 묶음이 약 10초 안에 생성됩니다. (--demo-only는 nightly 스펙 하네스가 기본으로 심는 내부 검증용 픽스처를 건너뛰어, 프로젝트 목록이 이 가이드의 설명과 정확히 일치하게 합니다.)

3. 로그인

브라우저에서 http://localhost:5173 을 열고 다음 계정으로 로그인합니다.

계정이메일비밀번호
Super adminadmin@demo.trustedoss.devDemoTest2026!
Team adminfrontend-admin@demo.trustedoss.devDemoTest2026!
Developerdev@demo.trustedoss.devDemoTest2026!

데모 비밀번호는 .env.example에 정의되어 있으며 의도적으로 약하게 잡혀 있습니다 — 외부 노출 가능한 호스트에서는 절대 그대로 쓰지 마십시오.

4. 둘러보기

  • Dashboard (/) — 조직 전체 심각도 타일과 최근 스캔.
  • Projects → frontend-admin의 프로젝트 — 데이터가 가장 풍부한 케이스. Vulnerabilities 탭을 열어 7단계 VEX 트리아지 흐름을 확인해 보세요.
  • Components & licenses — 허용 / 조건부 / 금지 라이선스 비중을 도넛으로 표시합니다.
  • SBOM — CycloneDX 또는 SPDX로 다운로드합니다.

Project list — 시드된 5개 프로젝트의 심각도 롤업

5. 실제 프로젝트 첫 스캔

시드된 데이터는 트리아지가 끝난 포트폴리오의 모습을 보여줍니다. 진짜 시험대는 자기 코드입니다. 데모 스택 그대로 진행합니다.

  1. 사이드바에서 Projects 를 클릭하고, 오른쪽 위 New project 를 클릭합니다.
  2. Name 과 공개 Git URL 을 입력하고 — 락파일이 있는 저장소라면 무엇이든 됩니다 — Create 를 클릭합니다.
  3. Scan 을 클릭하고(프로젝트 목록의 행 끝, 또는 프로젝트 상세 헤더), Source 스캔 타입을 그대로 둔 채 Start scan 을 클릭합니다.
  4. 드로어가 파이프라인 단계(fetch → cdxgen → scancode → vuln match → finalize)를 실시간으로 보여줍니다. 작은 저장소는 몇 분이면 끝나고, 탭을 닫아도 스캔은 워커에서 계속 실행됩니다.
  5. 스캔이 성공하면 Components 탭에 발견된 패키지가, Vulnerabilities 탭에 미해결 결과가 나타납니다 — 업그레이드별 보기로 전환하면 결과를 해소하는 정확한 버전 인상 목록을 볼 수 있습니다.
첫 부팅 시 취약점 데이터베이스를 내려받습니다

새 스택에서는 워커가 Trivy 취약점 데이터베이스를 백그라운드로 내려받습니다 (인터넷 연결 시 1~3분). 다운로드가 끝나기 전에 완료된 스캔은 컴포넌트는 보이지만 취약점이 0건으로 나옵니다 — 데이터베이스가 아직 도착하지 않은 것이지, 깨끗하다는 판정이 아닙니다. 재스캔은 필요 없습니다. 데이터베이스가 도착하면 자동 재매칭이 결과를 채웁니다. 취약점 데이터 참고.

사설 저장소는 자격 증명을 먼저 등록해야 합니다 — 사설 저장소 참고. 스캔 전체 레퍼런스(컨테이너 스캔, SBOM 업로드, 취소, 문제 해결)는 스캔입니다.

다음 단계

스택 종료

docker-compose -f docker-compose.dev.yml down

-v 옵션을 붙이면 데이터베이스 볼륨까지 함께 제거합니다.