
안녕하세요, Mark입니다.
제 서버에는 이제 노트 관련 프로그램만 벌써 세 개째가 올라가고 있습니다. HedgeDoc(협업 마크다운), MonicaHQ(인맥 관리 노트)에 이어, 오늘은 개인 지식 베이스 용도의 TriliumNext입니다.
“노트 앱이 왜 이렇게 많아?” 싶으실 수 있는데요, 다 이유가 있습니다. ㅎㅎ
📝 저는 이미 노트 앱을 두 개 쓰고 있었습니다
현재 제 노트 환경을 솔직하게 공개하면 이렇습니다.
옵시디언(Obsidian)과 Joplin을 같이 쓰고 있어요.
| 도구 | 싱크 방법 | 특징 |
|---|---|---|
| 옵시디언 | 유료 싱크 | 기능 엄청 많음, 커뮤니티 플러그인 수백 개 |
| Joplin | 드롭박스 | 가볍고 안정적, 무료 |
두 도구 모두 잘 쓰고 있긴 한데, 각자 아쉬운 점이 있어요.
Joplin은 마크다운 작성하고 싱크하는 게 주 기능인데, 플러그인이 있어도 별로 강력하지 않아요. 단순한 노트 용도로는 충분하지만, 뭔가 더 하고 싶을 때 한계가 느껴지더라고요.
옵시디언은 반대로 기능이 너무 많아요. 커뮤니티 플러그인도 수백 개고, 쓰면 쓸수록 강력해지는 건 맞는데… 앱 자체를 공부해야 제대로 쓸 수 있는 느낌이에요. 그리고 유료 싱크도 쓰고 있고요.
그 사이 어딘가에 딱 맞는 게 없을까 하다가 발견한 게 TriliumNext였습니다.
🧭 TriliumNext가 뭔가요?
TriliumNext는 원래 Trilium Notes라는 오픈소스 프로젝트였어요. 개발자(zadam)가 개발을 중단하면서, 커뮤니티가 이어받아 TriliumNext라는 이름으로 계속 발전시키고 있는 프로젝트입니다.
한마디로 정의하면 계층형 개인 지식 베이스(Personal Knowledge Base)예요.
노트를 트리 구조로 무한히 깊게 정리할 수 있고, 하나의 노트를 여러 위치에 동시에 배치하는 것도 가능합니다. 리치 텍스트(WYSIWYG) 편집과 마크다운 자동 포맷을 모두 지원하고, 코드 노트는 문법 강조도 됩니다.
그리고 플러그인 없이 기본 기능만으로도 꽤 강력해요.
Excalidraw로 다이어그램을 그리는 캔버스 노트 타입, 노트 간 관계를 시각화하는 릴레이션 맵, 스크립팅과 REST API 자동화, 노트별 암호화까지 기본으로 탑재되어 있습니다.
⚖️ 세 도구 비교: 어디에 포지션이 있나요?
| 항목 | Joplin | TriliumNext | 옵시디언 |
|---|---|---|---|
| 학습 난이도 | 쉬움 | 중간 | 어려움 (공부 필요) |
| 기본 기능 | 단순 | 강력 | 강력 |
| 플러그인 | 약함 | 없음 | 수백 개 |
| 싱크 방법 | 드롭박스 등 무료 | 서버 자체 싱크 | 유료 싱크 |
| 셀프호스팅 | 가능 | 핵심 기능 | 가능 |
| 노트 구조 | 폴더형 | 트리형 (무한 계층) | 링크형 |
| 가격 | 무료 | 무료 | 유료 싱크 |
TriliumNext는 딱 중간이에요. Joplin보다 훨씬 강력하고, 옵시디언처럼 공부를 엄청 많이 안 해도 되고, 무료에 셀프호스팅까지. 플러그인이 없는 대신 기본 내장 기능이 꽤 탄탄합니다. 단점은 아직 한국어를 기본 언어로 지원하지 않는 다는 점입니다. 일단 직관적이라서 영어로 사용해도 크게 문제는 없을 것 같습니다.
🔄 싱크 방식이 특이해요
TriliumNext의 싱크 방식이 다른 도구들이랑 좀 달라서 설명이 필요해요.
서버에 TriliumNext를 설치해두고, 각 기기의 데스크탑 앱이 그 서버를 바라보며 싱크하는 방식입니다. 모바일에서는 서버 도메인으로 접속해서 웹앱처럼 사용할 수도 있어요. 무료 도메인을 달아 주면 접속하기도 편하겠죠.
그러니까 이런 구조예요:
오라클 서버 (TriliumNext 서버 = 메인 데이터)
↕ 싱크
집 PC 데스크탑 앱
↕ 싱크
회사 PC 데스크탑 앱오라클 서버 (TriliumNext 서버 = 메인 데이터)
↕ 싱크
집 PC 데스크탑 앱
↕ 싱크
회사 PC 데스크탑 앱드롭박스나 구글 드라이브 같은 외부 서비스가 중간에 낄 필요가 없어요. 내 서버가 곧 싱크 서버니까요. 데이터가 오라클 서버에만 있고, 각 PC의 데스크탑 앱이 그걸 가져다 쓰는 방식입니다.
옵시디언 유료 싱크를 쓰는 이유가 “자체 싱크가 자꾸 꼬여서”였는데, TriliumNext는 서버 자체가 싱크 서버라서 그런 문제가 없어요. 여기서 주의 할 점은 서버의 프로그램 버전과 데스크탑 앱의 버전을 맞춰주지 않으면 싱크에 에러가 발생할 수도 있습니다.
📦 포테이너 스택으로 설치하기
이번 설치는 진짜 한 방에 끝납니다. 컨테이너가 하나라서 스택도 단순해요. 그리고 설치하기 전에 파일 브라우저로 서버에 접속해서 홈에 trilium폴더와 그 폴더 안에 data폴더를 미리 만들어 두고 스택을 배포해야합니다.
포테이너 → Stacks → Add Stack에서 아래 내용을 붙여넣으세요.
services:
trilium:
image: triliumnext/trilium:latest
container_name: trilium
restart: unless-stopped
environment:
- TZ=Asia/Seoul
ports:
- 8090:8080
volumes:
- /home/ubuntu/trilium/data:/home/node/trilium-dataservices:
trilium:
image: triliumnext/trilium:latest
container_name: trilium
restart: unless-stopped
environment:
- TZ=Asia/Seoul
ports:
- 8090:8080
volumes:
- /home/ubuntu/trilium/data:/home/node/trilium-data주요 설정 설명:
| 항목 | 설명 |
|---|---|
TZ=Asia/Seoul | 한국 시간대 설정 |
8090:8080 | 호스트 8090 → 컨테이너 8080 |
| 볼륨 경로 | 노트 데이터를 호스트에 직접 마운트 |
💡 HedgeDoc(3100), MonicaHQ(3101)에 이어 이번엔 8090번 포트입니다. 서비스가 쌓일수록 포트 번호 관리도 슬슬 체계가 필요해지네요 ㅎㅎ
포테이너에서 Deploy the Stack 버튼을 누르면 바로 설치 완료입니다.
🖥️ 데스크탑 앱 연결하기
서버 설치 후 진짜 핵심은 데스크탑 앱 연결이에요.
TriliumNext 공식 GitHub에서 Windows, Mac, Linux용 데스크탑 앱을 다운받을 수 있습니다. 안드로이드는 TriliumDroid 또는 Pocket Trilium, iOS는 Trinote라는 서드파티 앱을 사용할 수 있어요. 개인적인 생각으로는 그냥 도메인으로 접속해서 사용하는게 나을 것 같습니다.
데스크탑 앱 첫 실행 시 설정에서 “서버와 동기화” 옵션을 선택하고 서버 주소를 입력하면 됩니다.
회사 PC: 데스크탑 앱 설치 → 서버 주소 입력 → 싱크 완료 집 PC: 데스크탑 앱 설치 → 서버 주소 입력 → 싱크 완료
회사 PC: 데스크탑 앱 설치 → 서버 주소 입력 → 싱크 완료 집 PC: 데스크탑 앱 설치 → 서버 주소 입력 → 싱크 완료
이후부터는 회사에서 노트를 작성하면 집에서도 그대로 보이고, 집에서 수정하면 회사에서도 반영됩니다. 외부에서는 브라우저로도 접속 가능하고요.
✅ 핵심 요약
| 항목 | 내용 |
|---|---|
| 프로그램 | TriliumNext (계층형 개인 지식 베이스) |
| 포지션 | Joplin보다 강력, 옵시디언보다 단순 |
| 싱크 방식 | 서버 자체 싱크 → 데스크탑 앱 연결 |
| 플러그인 | 없음, 대신 기본 기능이 강력 |
| 설치 난이도 | 컨테이너 하나, 한 방에 완료 |
| 포트 | 8090 |
마치며
Joplin, 옵시디언, HedgeDoc, TriliumNext… 노트 앱이 네 개가 됐네요. 🫠
그런데 돌이켜보면 다 쓰임새가 달라요.
- Joplin: 가벼운 일상 메모, 드롭박스 싱크
- 옵시디언: 깊이 있는 개인 지식 관리
- HedgeDoc: 문서 초안, 협업
- TriliumNext: 체계적인 계층형 지식 베이스, 서버 싱크
셀프호스팅의 묘미가 이거잖아요. 필요한 걸 골라서 올리면 되니까요. 내 서버니까 무한정 올려도 돈이 안 드는 것도 큰 장점이고요 ㅎㅎ
Mark의 한마디: “플러그인이 없어서 걱정했는데, 기본 기능만으로도 이미 충분히 강력했습니다. 오히려 설정할 게 너무 많으면 지치더라고요.”