Ghost
설치-운영
Ghost 설치, 업그레이드, 백업
-
자동화/블로그
Ghost MCP v1.0.1 업데이트기: 프로토타입에서 오픈소스 도구로 — 무엇이 달라졌나
v1.0.0 공개 후 2개월. "내 블로그용 스크립트"를 "오픈소스 도구"로 끌어올린 변화 — 테스트, 보안, 유연성, 온보딩 네 가지 영역의 성숙화를 한눈에 정리합니다.
-
백엔드/API설계
마크다운 3포맷 자동 감지 파서 설계: legacy, frontmatter, plain을 한 파서로
기존 사용자의 레거시 포맷을 깨지 않으면서 표준 frontmatter와 일반 마크다운까지 지원해야 했습니다. 감지 순서, fallback 설계, 그리고 strategy 패턴을 포기한 이유를 정리합니다.
-
백엔드/API설계
TypeScript로 읽기 전용 상태 표현하기: Ghost 'sent' 상태 타입 분리 설계
시스템이 자동 설정하는 상태를 타입으로 어떻게 강제할까요? Ghost 포스트의 sent 상태를 예시로, Read 타입과 Write 타입을 분리해 invariant를 컴파일 타임에 보장하는 설계 패턴을 정리합니다.
-
백엔드/API설계
Ghost API 태그 삭제가 안 되는 이유: 빈 배열과 PATCH 시맨틱의 함정
Ghost MCP 개발 중 발견한 태그 삭제 silent failure. spread-if 패턴이 PATCH 요청에서 왜 위험한지, 그리고 빈 배열을 명시적으로 전송해야 하는 이유를 정리합니다.
-
Ghost/설치-운영
Ghost 셀프 호스팅 블로그 TTFB 3.7초 → 0.4초: Cloudflare Cache Rule로 87% 속도 개선
Ghost CMS는 기본적으로 HTML에 max-age=0을 설정해서 Cloudflare 캐시가 작동하지 않습니다. Cache Rule 하나로 TTFB를 3.7초에서 0.4초로 줄인 방법을 공유합니다.
-
Ghost/설치-운영
Ghost 셀프 호스팅에서 Google AdSense ads.txt 설정하기 (NPM + Docker)
Ghost는 정적 파일 서빙이 제한적이라 ads.txt를 직접 올릴 수 없습니다. NPM의 Advanced 설정에 location 블록을 추가해서 해결하는 방법을 정리했습니다.
-
자동화/블로그
Ghost MCP 서버 구축기: 블로그 66개 포스트 전수 감사 자동화
n8n 자동화의 한계를 넘어 MCP 서버를 만들고, 66개 포스트를 한 세션에서 전수 감사한 이야기
-
Ghost/설치-운영
Ghost 블로그 업그레이드 완벽 가이드 - Docker 환경에서 안전하게 버전 올리기
Ghost 셀프호스팅 블로그를 Docker 환경에서 안전하게 업그레이드하는 방법을 단계별로 설명합니다.
-
Ghost/설치-운영
Ghost 블로그를 Docker로 설치하고 HTTPS 적용하기
Cloudflare, Nginx Proxy Manager, Ghost를 Docker로 구성하여 프로덕션급 블로그 인프라를 무료로 구축하는 방법을 설명합니다.