블로그 플랫폼 선정: 어떤 도구를 쓸 것인가?

홈서버 연재를 결심하고 가장 먼저 고민한 것은 “어디에 글을 쓸 것인가"였습니다. 제가 고려했던 세 가지 선택지는 다음과 같았습니다.

1. Velog / Medium (External Platform)

  • 장점: 별도의 서버 세팅이 전혀 필요 없으며, 플랫폼 자체의 유입 덕분에 글을 알리기에 가장 유리합니다. 사실 운영 효율 면에서는 가장 합리적인 선택지입니다.
  • 단점: 디자인 커스터마이징에 제약이 있고, 무엇보다 이미 구축해둔 홈서버와 개인 도메인을 최대한 활용하고 싶다는 ‘자기만족’의 관점에서 제외하게 되었습니다.

2. Ghost (Self-hosted)

  • 장점: UI가 다채롭고 에디터가 좋습니다. 뉴스레터 기능도 기본 탑재되어 있고 실제 프로덕션에서 Ghost 를 운영하는 기업들이 많습니다.
  • 단점: Node.js와 데이터베이스를 직접 운영해야 합니다. 버전 업데이트나 DB도 같이 관리해야 하며, 미니 PC의 리소스를 상시 점유한다는 점이 간단한 블로그 운영을 원하는 저에게는 부담스러웠습니다.

3. Hugo (SSG)

  • 장점: 마크다운 기반으로 로컬에서 작성하며, 결과물이 정적 HTML이므로 서버 부하나 보안 위협이 거의 없습니다. 테마를 통한 커스터마이징이 가능하고, Git으로 모든 이력을 관리할 수 있습니다.
  • 단점: 초기 테마 세팅이나 마크다운 문법에 익숙해지는 과정이 필요합니다.

최종 선택: Hugo
홈서버 운영법을 공유하는 블로그 자체가 홈서버 부하의 원인이 되는 것은 앞뒤가 맞지 않는다고 생각했습니다. “최소한의 리소스로 최고의 퍼포먼스를 내자"는 이번 홈서버 구축 철학에 맞춰, 가장 가볍고 개발자 친화적인 Hugo를 최종 선택하게 되었습니다.


GitHub Pages에서 Cloudflare Pages로 전환 과정

처음에는 GitHub Pages를 사용하여 배포를 시작했습니다. 하지만 곧 두 가지 벽에 부딪혔습니다.

  1. Public Repository 강제: 무료 플랜에서 GitHub Pages를 쓰려면 레포지토리가 공개(Public) 상태여야 합니다.
  2. 커밋 히스토리 관리: 연재글을 다듬는 과정에서 발생하는 수많은 오타 수정과 임시 저장 커밋들이 공개되는 것이 껄끄러웠습니다. 특히 설정 파일의 샘플을 적용하는 과정에서 실수로 민감정보가 git에 포함 될 가능성도 있었습니다.

이를 해결하기 위해 대안을 찾아보다가 Cloudflare Pages를 알게 되었습니다.

왜 Cloudflare Pages 인가?

Cloudflare Pages는 GitHub Pages의 간편함과 AWS Amplify의 강력한 기능이 결합된 형태에 가깝습니다.

  • Private Repository 지원: 레포지토리가 비공개 상태여도 무료로 호스팅이 가능합니다. 덕분에 마음 편히 지저분한(?) 커밋을 남기며 글을 쓸 수 있게 되었습니다.
  • 강력한 엣지 인프라: 마찬가지로 무료로 Cloudflare의 글로벌 네트워크를 사용하여 엣지 네트워크를 사용할 수 있습니다.
  • 간편한 커스텀 도메인: 3편에서 다룬 Cloudflare 환경과 완벽히 통합되어, 간편하게 클릭 몇 번으로 개인 도메인을 연결하고 SSL 인증서까지 자동으로 관리합니다.

네트워크 구성부터 OS 설치, Cloudflare Tunnel을 이용한 외부 노출, GitLab CI/CD 파이프라인 구축, 그리고 마지막 Hugo 블로그 배포까지.

이 5단계의 과정을 통해 저만의 홈서버 생태계가 완성되었습니다. 각 단계는 누군가에겐 너무 쉽거나 투박해 보일 수 있지만, 1인 운영 환경에서 생산성과 유지보수의 효율을 잘 갖춘 결과물이라고 생각합니다.

앞으로는 이 인프라 위에 다양한 자기계발용 서비스들을 하나씩 올려볼 예정입니다. 홈서버의 세계에 발을 들이는 분들에게 이 글이 도움이 되었길 바랍니다.