
필자는 브라우저 북마크를 잘 정리하는 편이 아니었다. 그리고 그 원인의 상당 부분이 도구 자체에 있다는 사실도 인정하게 됐다. 링크를 저장하고 폴더에 던져 넣으면 잊어버리기 십상인데, 정확히 어디에 넣었는지 기억하지 못하면 아무것도 찾을 수 없다. Chrome 북마크를 대체하는 전용 도구들조차 이 문제를 완벽하게 해결하지는 못했다.
결국 필자가 선택한 것은 Karakeep. 무료 오픈소스 자체 호스팅 앱으로, 링크는 물론 노트, 이미지, PDF까지 AI 기반 자동 태깅과 함께 한곳에 보관해 준다. 브라우저 북마크가 처음부터 해줬어야 했던 일을 비로소 해내는 도구다.
Karakeep은 링크만 저장하지 않는다
URL, 노트, 이미지, PDF를 모두 한곳에 보관
브라우저 북마크는 URL만 저장한다. 그게 전부다. 맥락도, 미리보기도 없어서 3주 후에는 왜 그 링크를 저장했는지 떠올릴 방법이 없다. Karakeep은 다른 접근 방식을 택한다. 링크, 일반 텍스트 노트, 이미지, PDF를 하나의 공간에 함께 저장할 수 있게 해준다.
URL을 Karakeep에 넣으면 페이지 제목, 설명, 미리보기 이미지가 자동으로 불러와진다. 이것만으로도 북마크 폴더보다 훨씬 실용적인데, 일일이 클릭해 보지 않고도 저장된 항목이 무엇인지 한눈에 파악할 수 있기 때문이다.
모든 항목을 커스텀 리스트로 분류할 수도 있다. 필자는 연구 자료, 튜토리얼, 나중에 참고할 글을 각각 별도의 리스트로 관리한다. 단순한 기능이지만, 모든 것이 하나의 감당하기 어려운 피드로 뒤엉키는 것을 막아준다.
여기에 RSS 자동 가져오기 기능도 지원한다. 팔로우하는 블로그나 뉴스 사이트의 새 콘텐츠를 별도의 수동 작업 없이 자동으로 받아온다. 게다가 웹페이지 전체를 아카이브해 두기 때문에 원본 링크가 삭제되어도 사본이 남는다. 깨진 링크 때문에 소중한 참고 자료를 잃은 적이 여러 번 있는 필자에게는 반가운 기능이다.
Karakeep 실행까지 단 5분
Docker Compose 파일이 설정을 대신 처리
'자체 호스팅'이라는 단어가 겁날 수 있지만, Karakeep은 Docker 위에서 돌기 때문에 복잡한 부분은 Docker가 알아서 처리해 준다. PC에 Docker Desktop만 설치되어 있다면 설정에 5분이면 충분하다. 전용 서버도, Linux 사용 경험도 필요 없다. Windows 머신에서 로컬로 문제없이 구동된다.
실행 방법은 다음과 같다:
- PowerShell을 열고
mkdir C:\karakeep-app명령으로 Karakeep용 새 폴더를 만든 뒤,cd C:\karakeep-app으로 해당 폴더로 이동한다. wget https://raw.githubusercontent.com/karakeep-app/karakeep/main/docker/docker-compose.yml명령으로 공식 Docker Compose 파일을 내려받는다.- 같은 폴더에 다음 변수들을 담은 .env 파일을 생성한다.
@"
KARAKEEP_VERSION=release
NEXTAUTH_SECRET=$(openssl rand -base64 36)
MEILI_MASTER_KEY=$(openssl rand -base64 36)
NEXTAUTH_URL=https://localhost:3000
"@ | Out-File -Encoding UTF8 .env - 시스템에 OpenSSL이 없다면 C:\karakeep-app 폴더에서 .env 파일을 열고 랜덤 문자열 부분을 직접 생성한 임의 값으로 교체한다.
- Docker Desktop을 실행한 뒤, 터미널에서
docker compose up -d를 입력해 전체 시스템을 시작한다. - 브라우저에서
https://localhost:3000에 접속해 회원가입하면 끝난다.
이 과정을 통해 세 개의 컨테이너가 구동된다. Karakeep 웹 앱, 페이지 크롤링을 담당하는 헤드리스 Chrome 인스턴스, 전문 검색을 위한 Meilisearch다. 모든 설정은 compose 파일에 미리 구성되어 있으니 신경 쓸 것이 없다.
어디서든 접근 가능
앱이 실행되면 웹 인터페이스에만 갇히지 않는다. Karakeep은 클릭 한 번으로 페이지를 저장할 수 있는 Chrome 확장 프로그램과 Firefox 애드온을 제공한다. 다른 확장 프로그램과 마찬가지로 설치 전에는 안전성 검토를 거치는 것이 좋다. iOS와 Android용 모바일 앱도 있으며, 로컬 인스턴스와 동기화되므로 휴대폰에서 저장한 내용이 데스크톱에 나타나고 그 반대도 가능하다.
Chrome, Linkwarden, Omnivore 등에 있는 기존 북마크를 그대로 가져올 수도 있어서, 도구를 바꾼다고 처음부터 다시 시작할 필요가 없다. 브라우저 북마크와의 자동 동기화를 원한다면 Floccus가 그 역할을 대신해 준다.
AI 태깅과 전문 검색이 자료를 찾는 방식을 바꿔줬다
북마크에 자동으로 태그를 달아주는 Karakeep
북마크에 일일이 태그를 다는 일은 번거로워서 대부분 포기하고 만다. 필자 역시 그랬다. Karakeep은 이 과정을 AI로 자동화한다. 항목을 저장할 때마다 내용을 분석해 관련 태그를 스스로 생성한다. 예를 들어 Excel 수식 튜토리얼을 저장하면 '스프레드시트', '생산성' 같은 태그를 자동으로 붙여준다.
저장된 각 항목에 대한 짧은 요약도 함께 생성된다. 수십 개의 북마크를 넘겨볼 때 특정 글이 어떤 내용이었는지 기억나지 않을 때 매우 유용하다. 요약만 봐도 다시 읽을지 말지 판단하기에 충분하다.
AI 태깅을 활성화하는 방법은 두 가지다. 가장 간단한 방법은 .env 파일에 OpenAI API 키를 추가하는 것이다.
- platform.openai.com에서 OpenAI API 키를 발급받는다.
- Karakeep 폴더의 .env 파일을 열고
OPENAI_API_KEY=sk-your-key-here라인을 추가한다. - PowerShell에서
docker compose up -d를 실행해 Karakeep을 재시작한다.
비용 부담은 거의 없다. Karakeep은 기본적으로 GPT-4.1 mini 모델을 사용하기 때문에 북마크 수십 개를 태깅해도 청구액에 거의 영향을 주지 않는다. 데이터를 OpenAI로 보내고 싶지 않다면 Ollama를 통해 AI 모델을 로컬에서 무료로 실행할 수 있다. ollama.com에서 설치한 후, 터미널에서 ollama pull llama3.1과 ollama pull llava를 실행해 필요한 모델을 내려받는다.
그런 다음 OpenAI 키 대신 .env 파일에 다음 줄을 추가한다. OLLAMA_BASE_URL=https://host.docker.internal:11434, INFERENCE_TEXT_MODEL=llama3.1, INFERENCE_IMAGE_MODEL=llava. Karakeep을 시작하기 전에 Ollama가 먼저 실행 중이어야 한다.
Karakeep을 브라우저 북마크보다 우위에 놓이게 만드는 또 다른 기능은 Meilisearch 기반의 전문 검색이다. 단순히 제목을 검색하는 것이 아니라, 저장해 둔 모든 페이지의 실제 본문 내용을 검색한다. 글 제목은 잊었지만 특정 문구가 기억난다면 그대로 입력하기만 하면 된다. Karakeep이 알아서 찾아준다.
태그를 기준으로 항목을 특정 리스트에 자동 분류하는 등 자동화 워크플로우를 구축할 수 있는 규칙 기반 엔진도 갖추고 있다. 필자는 아직 깊게 활용해 보지 않았지만, 더 세밀한 정리 제어가 필요하다면 언제든 사용할 수 있는 기능이다.
자체 호스팅으로 데이터의 주도권을 내 손에
북마크는 내 머신에 남는다
필자가 클라우드 기반 서비스 대신 Karakeep을 선택한 가장 큰 이유는 북마크가 내 머신에 그대로 남는다는 점이다. 서드파티 서버에 데이터를 맡기면 어떤 일이 벌어지는지는 Mozilla가 Pocket 서비스를 종료했을 때 잘 드러났다.
Karakeep은 AGPL 라이선스를 따르는 오픈소스 프로젝트로, 코드가 완전히 공개되어 있고 GitHub에서 활발히 유지 관리된다. 오해하지 말자, 자체 호스팅한다고 해서 책상에 묶여 있는 것은 아니다. 서버는 PC에서 로컬로 돌지만, iOS와 Android 앱이 홈 네트워크를 통해 이 서버에 접속한다. 컴퓨터만 켜져 있으면 휴대폰에서도 얼마든지 북마크에 접근할 수 있다. 집 밖에서 접근해야 한다면 Tailscale 같은 도구가 머신을 인터넷에 노출하지 않고도 보안 터널을 만들어 준다.
이런 과정 자체가 번거롭게 느껴지고 Docker 사용을 아예 피하고 싶다면, Karakeep은 cloud.karakeep.app에서 관리형 클라우드 옵션도 제공한다. 자체 호스팅의 이점은 포기해야 하지만, 나머지 모든 기능은 동일하게 사용할 수 있다.
글쓴이 야시르(Yasir)는 MUO에서 Windows, 생산성, 보안, 인터넷 분야를 다루는 기계공학 출신 테크 작가다. 자율 시스템에 대한 관심으로 하드웨어와 소프트웨어를 끊임없이 만지작거리며, 독자와 같은 문제를 직접 겪어보고 해결책을 전달하는 방식으로 글을 쓴다.