> ## Documentation Index
> Fetch the complete documentation index at: https://docs.baeum.ai.kr/llms.txt
> Use this file to discover all available pages before exploring further.

# ChromaDB

**경량 벡터 데이터베이스**입니다. 설정이 간단하고 Python SDK가 직관적이어서, RAG 프로토타이핑과 소규모 프로젝트에 적합합니다.

## 어디에 쓰이나요?

* **RAG 프로토타이핑**: 빠르게 벡터 검색 기반 RAG를 구현하고 테스트
* **소규모 RAG**: 수천\~수만 건 규모의 문서 검색
* **교육/실습**: 벡터 데이터베이스 개념 학습 및 실습
* **LangChain 연동**: LangChain의 기본 벡터 DB로 자주 사용

대규모 프로덕션 환경에서는 Qdrant, Milvus 등을 권장합니다.

## Docker Compose

```yaml docker-compose.yml theme={null}
services:
  chromadb:
    image: chromadb/chroma:latest
    container_name: chromadb
    restart: unless-stopped
    ports:
      - "8000:8000"
    volumes:
      - chroma_data:/chroma/chroma
    environment:
      - IS_PERSISTENT=TRUE
      - ANONYMIZED_TELEMETRY=FALSE

volumes:
  chroma_data:
```

## 실행

```bash theme={null}
docker compose up -d
```

## 접속 확인

```bash theme={null}
curl http://localhost:8000/api/v1/heartbeat
```

## 기본 정보

| 항목        | 값               |
| --------- | --------------- |
| API 포트    | 8000            |
| 데이터 저장 경로 | chroma\_data 볼륨 |

## 라이선스

| 구분     | 내용                       |
| ------ | ------------------------ |
| 라이선스   | Apache License 2.0       |
| 개인 사용  | 자유롭게 사용 가능               |
| 상업적 사용 | 자유롭게 사용 가능, 수정/재배포 제한 없음 |

## 참고

* [ChromaDB 공식 문서](https://docs.trychroma.com/)
* [ChromaDB GitHub](https://github.com/chroma-core/chroma)

## 설치 점검 목록

* `docker compose up -d` 후 `docker compose ps`로 컨테이너 상태를 확인했습니다.
* 기본 포트/계정/비밀번호를 문서대로 점검했습니다.
* 운영용으로 사용할 때 기본 비밀번호/시크릿 값을 변경했습니다.
* 장애 분석을 위해 `docker compose logs -f` 확인 방법을 숙지했습니다.

## 문제 해결 가이드

* 컨테이너가 실행되지 않으면 `docker compose logs -f`로 오류 원인을 먼저 확인합니다.
* 포트 충돌이 나면 기존 프로세스를 종료하거나 포트 매핑 값을 변경합니다.
* 이미지 pull 실패 시 네트워크 연결 및 레지스트리 접근 권한을 확인합니다.
* 설정 변경 후 문제가 지속되면 `docker compose down` 후 다시 `up -d`로 재기동합니다.

## 관련 문서

<CardGroup cols={2}>
  <Card title="Setup 홈" icon="house" href="/setup/index">
    운영체제별 설치 흐름을 다시 확인합니다.
  </Card>

  <Card title="다음: vLLM" icon="arrow-right" href="/stacks/vllm">
    다음 설치 단계를 이어서 진행합니다.
  </Card>
</CardGroup>
