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

# Settings

> 라이선스 키, 호스트 포트, 리셋, 전체 언인스톨 — 설치 화면 우상단의 톱니 아이콘에서 엽니다.

Settings 오버레이는 Landing · Dashboard 화면 우상단의 톱니 아이콘으로 엽니다. 두 개의 입력과 세 개의 액션 버튼이 있는 작은 패널입니다. 저장한 값은 모두 `~/.nora/onprem/.env.onprem` 에 쓰이고, 값이 실제로 바뀐 경우에만 스택이 재시작됩니다.

## 필드

### 라이선스 키

유료 라이선스 활성화 문자열입니다. 값이 비어 있으면 워크스페이스는 **free tier** — 워크스페이스 1개, 플로우 3개, 하루 100회 실행 — 로 돕니다.

* 값은 `.env.onprem` 에 `NORA_LICENSE_KEY` 로 저장됩니다.
* 다음 서버 start 에서 반영됩니다. 값이 바뀐 상태로 **\[Save + Restart]** 를 누르면 앱이 stop → start 를 대신 실행합니다.
* 완전 오프라인 설치에서는 대신 `NORA_LICENSE_FILE` (라이선스 JSON 파일 경로) 을 사용합니다. 오프라인 라이선스 흐름은 [에어갭 tarball](/ko/local-app/deploy/airgap) 을 참고하세요.

### 호스트 포트

Nora 인스턴스가 listen 할 TCP 포트입니다. 기본값은 `8090` 입니다.

* 값은 `.env.onprem` 에 `NORA_HOST_PORT` 로 저장되고 `nora-server` 컨테이너의 포트 맵에 적용됩니다.
* 이미 `8090` 이 점유되어 있거나 Nora 인스턴스를 두 개 나란히 돌리고 싶을 때 바꿉니다.
* 포트를 바꾸면 스택이 stop → start 됩니다. SPA · API 가 새 포트로 이동하고, MCP 링크는 새 `NORA_PUBLIC_URL` 을 기준으로 재생성됩니다.

## 액션

### Save + Restart

위 필드 값을 `.env.onprem` 에 씁니다. 스택이 이미 떠 있으면 앱이 stop → start 를 실행해 새 값을 즉시 반영합니다.

### Reset (drop data)

파괴적입니다. Postgres 와 Qdrant 볼륨이 드랍되어 워크스페이스, 사용자, 플로우, 메모리, 리트리벌 인덱스가 모두 사라집니다. 설정 (`.env.onprem`, `docker-compose.yml`) 은 보존되므로 다음 start 는 같은 형태로 부팅됩니다.

* 버튼은 확인 상자에 **`reset`** 을 입력해야 실행됩니다. 되돌릴 수 없습니다.
* Docker 이미지는 데몬의 이미지 스토어에 그대로 남습니다. 마운트된 볼륨만 드랍합니다.

CLI 로 같은 효과를 낼 수 있습니다.

```bash theme={null}
docker compose -f ~/.nora/onprem/docker-compose.yml \
  --env-file ~/.nora/onprem/.env.onprem down -v
```

### Uninstall

전체 해체입니다. 모든 컨테이너를 stop 하고 볼륨을 드랍하고 Nora 소유 이미지를 제거하고 `~/.nora/onprem/` 을 삭제한 뒤 앱을 종료합니다.

* 버튼은 확인 상자에 **`uninstall`** 을 입력해야 실행됩니다. 되돌릴 수 없습니다.
* `.app` 번들 자체는 디스크에 남으므로 macOS 는 휴지통으로, Windows 는 **앱 및 기능** 으로 마무리합니다.
* 데스크톱 프로세스는 응답이 UI 에 닿은 뒤 약 400 ms 지나 종료되므로 앱이 스스로 닫히는 모습이 보입니다. 이 구간에 강제 종료하지 마세요.
* 번들된 `postgres`, `redis`, `qdrant` 이미지는 다른 프로젝트가 공유할 수 있어 그대로 남깁니다. 디스크 회수는 `docker image prune` 로 처리합니다.

## 설정 파일 위치

앱이 호스트에 지속시키는 모든 값은 `~/.nora/onprem/` 아래에 있습니다.

| 파일 | 내용 |
| - | - |
| `docker-compose.yml` | 앱에 번들된 compose 파일의 복사본. 설치할 때마다 덮어쓰므로 앱 업그레이드가 반영됩니다. Settings 노출 밖의 커스텀 마운트 · 환경이 필요하면 이 파일을 직접 편집합니다. |
| `.env.onprem` | compose 스택이 사용하는 환경. Settings 패널이 씁니다. 패널에 없는 값 — SSO client id/secret, `NORA_AIRGAP`, `NORA_PUBLIC_URL` 등 — 은 직접 편집합니다. |

두 파일 모두 변경은 다음 스택 start 에 적용됩니다. 트레이의 **\[Restart stack]** 이 가장 빠른 적용 방법입니다.

## 다음

<CardGroup cols={2}>
  <Card title="업데이트" icon="arrows-rotate" href="/ko/local-app/desktop/updates">
    업데이트 확인과 오프라인 tarball import.
  </Card>

  <Card title="에어갭 tarball" icon="box-archive" href="/ko/local-app/deploy/airgap">
    오프라인 설치와 `NORA_LICENSE_FILE` 흐름.
  </Card>
</CardGroup>
