Joplin

한 줄 요약

Joplin은 마크다운을 지원하는 오픈소스 노트 앱으로, 셀프호스팅 서버로 모든 기기 동기화가 가능하다.


왜 Joplin인가?

기존 노트 앱의 아쉬움

시놀로지의 DS Note를 오래 사용했지만 한계가 있었다:

서비스문제점
DS Note마크다운 미지원, 시놀로지 전용
Evernote무료 제한, 마크다운 미지원
Notion외부 서버, 오프라인 제한
Apple NotesApple 생태계 전용

Joplin의 해결책

  • 마크다운 지원: 개발자에게 익숙한 문법
  • 모든 OS 지원: Windows, Mac, Linux, iOS, Android
  • 셀프호스팅: 내 서버에 데이터 저장
  • E2E 암호화: 옵션으로 종단간 암호화 지원

Joplin의 장점

1. 완전한 크로스 플랫폼

플랫폼지원
Windows⭕ 데스크톱 앱
Mac⭕ 데스크톱 앱
Linux⭕ 데스크톱 앱
iOS⭕ 모바일 앱
Android⭕ 모바일 앱
CLI⭕ 터미널 버전

2. 강력한 마크다운 지원

  • 실시간 마크다운 미리보기
  • 코드 하이라이팅
  • 수학 공식 (KaTeX)
  • 다이어그램 (Mermaid)
  • 체크리스트

3. 유연한 동기화 옵션

방식특징
Joplin Server공식 서버, 빠른 동기화
Joplin Cloud유료 클라우드 서비스
WebDAVNextcloud, Synology 등
Dropbox무료 클라우드
OneDriveMicrosoft 클라우드
S3AWS 호환 스토리지

4. 개발자 친화적

  • 외부 에디터 연동 (VS Code 등)
  • 플러그인 시스템
  • API 제공
  • 웹 클리퍼 (브라우저 확장)

Joplin Server 설치하기

왜 Joplin Server인가?

기존 WebDAV 방식도 잘 작동하지만, Joplin Server의 장점:

  • WebDAV보다 동기화 속도 빠름
  • 계정별 데이터 분리 (가족 공유 가능)
  • 관리 웹 UI 제공

환경 설정 파일

.env 파일 생성:

APP_BASE_URL=https://joplin.example.com
APP_PORT=22300

POSTGRES_PASSWORD=joplin_secure_password
POSTGRES_DATABASE=joplin
POSTGRES_USER=joplin
POSTGRES_PORT=5432

⚠️ APP_BASE_URL을 실제 접속 URL로 변경하세요.

docker-compose.yml

services:
  joplin:
    image: joplin/server:latest
    container_name: joplin
    restart: unless-stopped
    ports:
      - "${APP_PORT}:22300"
    environment:
      - APP_BASE_URL=${APP_BASE_URL}
      - APP_PORT=${APP_PORT}
      - DB_CLIENT=pg
      - POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
      - POSTGRES_DATABASE=${POSTGRES_DATABASE}
      - POSTGRES_USER=${POSTGRES_USER}
      - POSTGRES_PORT=${POSTGRES_PORT}
      - POSTGRES_HOST=db
    depends_on:
      - db

  db:
    image: postgres:15-alpine
    container_name: joplin-db
    restart: unless-stopped
    environment:
      - POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
      - POSTGRES_USER=${POSTGRES_USER}
      - POSTGRES_DB=${POSTGRES_DATABASE}
    volumes:
      - ./postgres:/var/lib/postgresql/data

실행

# 시작
docker compose up -d

# 접속
# https://joplin.example.com (또는 http://서버IP:22300)
# 기본 계정: admin@localhost / admin

⚠️ 보안 주의: 첫 로그인 후 반드시 비밀번호 변경!


클라이언트 설정

데스크톱/모바일 앱 다운로드

동기화 설정

  1. Joplin 앱 실행
  2. 설정동기화
  3. 동기화 대상: Joplin Server 선택
  4. 서버 URL: https://joplin.example.com 입력
  5. 이메일/비밀번호: 서버에서 생성한 계정 입력
  6. 동기화 대상 확인 클릭

첫 동기화

설정 완료 후 좌측 하단 동기화 버튼 클릭


추천 설정

1. 외부 에디터 연동

긴 글 작성 시 VS Code 등 외부 에디터 사용:

  1. 설정일반
  2. 텍스트 편집기 명령: 에디터 경로 입력
    • Mac: /usr/local/bin/code
    • Windows: C:\Users\...\Code.exe

2. 웹 클리퍼 설치

브라우저에서 웹 페이지를 바로 저장:

3. 플러그인 추천

플러그인기능
Note Tabs탭으로 여러 노트 열기
Outline목차 사이드바
Templates노트 템플릿
Markdown Table테이블 편집 도구

플러그인 설치: 설정플러그인 → 검색 후 설치

4. 단축키 설정

단축키기능
Cmd/Ctrl + N새 노트
Cmd/Ctrl + S저장
Cmd/Ctrl + E에디터/미리보기 토글
Cmd/Ctrl + L체크리스트 토글
F10사이드바 토글

WebDAV 동기화 (대안)

Joplin Server 없이 기존 NAS의 WebDAV를 사용할 수도 있다:

Synology WebDAV 설정

  1. Synology DSM → 패키지 센터 → WebDAV Server 설치
  2. WebDAV Server 열기 → HTTPS 포트 설정 (예: 5006)
  3. Joplin 앱에서:
    • 동기화 대상: WebDAV
    • URL: https://nas.example.com:5006/joplin
    • 사용자명/비밀번호: Synology 계정

단점 및 해결책

단점해결책
초기 설정 복잡Docker Compose로 간소화
모바일 앱 약간 무거움필요한 노트북만 동기화 설정
실시간 협업 없음개인 용도로 사용

비슷한 서비스 비교

서비스마크다운셀프호스팅무료
Joplin
Obsidian⚠️ (로컬)
Standard Notes⚠️ 제한적
Notion⚠️ 일부⚠️ 제한적
Logseq⚠️ (로컬)

마무리

Joplin은 **“내 노트는 내가 관리한다”**는 철학에 맞는 최고의 노트 앱이다.

  • 마크다운 완벽 지원
  • 모든 기기에서 동기화
  • 셀프호스팅으로 데이터 주권 확보

개발자이거나 마크다운을 좋아한다면, Joplin을 강력 추천한다.