Logo

정적 사이트 생성기로 나만의 블로그 시작하기

와, 2022년이 밝았습니다! 🎊 나도 새해에는 블로그를 하나 시작해볼까 하시는 분들이 많을 것 같은데요.

블로그는 크게 두가지 방법으로 시작할 수 있는데요. 첫번째는 블로그 서비스를 이용하는 것이고, 두번째는 스스로 블로그를 만드는 것이에요.

블로그를 다년 간 운영해온 경험을 바탕으로 블로그를 시작하는 다양한 방법과 직접 블로그를 만들 수 있는 정적 사이트 생성기에 대해서 소개해드릴게요.

포털 블로그 서비스

블로그를 한 번도 안 해보신 분들이 블로그를 시작할 때 가장 쉽게 접근할 수 있는 방법은 바로 대형 포털 사이트에서 제공하는 블로그 서비스의 도움을 받는 것입니다. 이러한 블로그 서비스를 사용하면 누구나 쉽게 가입만 하면 바로 블로그를 시작할 수 있다는 큰 장점이 있어요. 뿐만 아니라 블로그 운영에 필요한 각종 관리 도구를 대부분 무료로 제공해주기 때문에 정말 편리하죠.

하지만 아무래도 특정 플랫폼에 종속되기 때문에 나만의 개성있는 블로그를 만드는데는 좀 한계가 있는 방법이기도 해요. 특히 국내 포털 사이트에서 제공하는 블로그 서비스의 경우 폐쇄적인 생태계에 나의 블로그가 갖혀버리는 느낌을 지울 수 없거든요.

저도 Blogger라는 구글에서 만든 블로그 서비스를 이용해서 제 블로그를 처음 시작했어요.

블로그 특화 서비스

대형 포털 사이트를 이용하는 것이 꺼려지신다면 블로그에 특화된 서비스를 고려해볼 수 있습니다. 대표적으로 해외에는 Medium, 국내에는 티스토리브런치와 같은 서비스를 들 수 있는데요.

이러한 서비스들은 비교적 UI가 깔끔하고 블로그를 커스터마이징(사용자화)하기가 좀 더 용이하다는 장점이 있습니다. 치명적인 단점이라고 한다면 해당 블로그 플랫폼이 어떤 이유로든 서비스를 종료해버리면 내 블로그도 함께 없어질 위험이 있다는 것인데요. 블로그를 장기적으로 운영하실 생각이라면 이러한 리스크를 대처가 가능한지 반드시 따져보셔야할 것입니다.

저 같은 경우 국문으로된 개인 블로그가 있기 때문에 영문 포스팅에 한해서만 가끔 Medium을 이용하고 있습니다.

다음 섹션부터는 외부 서비스에 의존하지 않고 스스로 블로그를 만든는 방법에 대해서 살펴보겠습니다.

WordPress

워드프레스(WordPress)는 독보적으로 많이 사용되고 있는 컨텐츠 관리 시스템(CMS)입니다. 전 세계 웹사이트의 20~30%가 워드프레스로 만들어졌다는 말이 있을 정도이니까요.

워드프레스는 비단 개인 블로그 뿐만 아니라 대형 웹사이트까지 만들 수 있는 범용 도구입니다. 그래서 블로그에 단순히 글만 올리는 게 아니라 물건도 좀 팔고 다양한 추가 기능을 구현하고 싶다면 워드프레스가 날개가 되어 줄 수 있습니다.

하지만 워드프레스의 가장 큰 단점은 배울 게 이것저것 좀 많아서 진입장벽이 비교적 높은 편이라는 것입니다. 게다가 자체 DB를 갖춘 PHP 서버 호스팅이 필요하기 때문에 비용이나 기술적인 측면에서도 블로그 입문자에게는 부담이 될 수 있습니다.

저도 워드프레스를 몇번 써보았는데 확실히 블로그 용으로는 기능이 너무 복잡하고 방대하다는 느낌을 받았습니다. 무엇보다 워드프레스의 위상과 인기가 예전만큼은 아니라서 새롭게 무엇가를 배워서 블로그를 만드시고 싶은 분이라면 별로 추천드리지 않습니다.

Jekyll

최근 몇년 간 정적 사이트 생성기(Static Site Generator, SSG)를 이용해서 만들어진 블로그가 눈에 띄게 늘었는데요.

정적 사이트 생성기 자체에 대한 자세한 설명은 관련 포스팅을 참고바랍니다.

수많은 사이트 생성기 중에서도 Jekyll은 가장 원조격에 해당하면서 지금까지 꾸준히 쓰이고 있는데요. Jekyll은 GitHub Pages에서 공식적으로 지원하기 때문에 특히 개발자 사이에서 빠르게 입소문을 타고 인기가 많아졌습니다.

Jekyll과 함께 컨텐츠를 작성하는 새로운 포맷인 마크다운(markdown)도 등장하여 HTML보다 훨씬 간단한 문법으로 각광을 받게 되었는데요. 저도 이 때부터 복잡한 HTML 편집기를 버리고 Jekyll를 이용하여 블로그를 100% 마크다운으로 작성하기 시작했습니다.

Jekyll은 제가 처음으로 접한 사이트 생성기였고 Jekyll을 통해 자연스럽게 직접 블로그를 만드는 기본적인 요령을 익힐 수 있었습니다. Jekyll은 쓰면서 개인적으로 아쉬웠던 부분은 제가 Ruby 언어를 잘 하지 못해서 문제가 발생했을 때 스스로 해결하기가 어려웠다는 점이었는데요. Ruby를 잘 쓰시는 분이라면 Jekyll 만큼 안정적이고 검증된 사이트 생성기도 없다고 생각합니다.

Hexo

제가 블로그를 운영하면서 가장 오랫동안 사용한 정적 사이트 생성기는 단연 Hexo 입니다. Jekyll에서 갈아탄 후 한 2년 넘게 사용한 것 같은데요. Hexo는 제가 익숙한 자바스크립트를 기반으로 되어 있는 사이트 생성기라서 저한테 그야말로 안성맞춤이었습니다.

Hexo가 정말 마음에 들었던 부분은 정말 예쁜 테마와 유용한 플러그인이 많았다는 것이었어요. 게다가 테마와 플러그인을 Node.js의 패키지 매니저의 npm을 이용하여 터미널에서 명령어 한 줄로 설치할 수가 있어서 너무 너무 편했어요.

결국 저는 작년에 Gatsby로 갈아타긴 했지만 Hexo는 제가 언제든지 돌아갈 수 있을 정도로 훌륭한 사이트 생성기라고 생각합니다. React가 생소하신 자바스크립트 개발자 분들에게 Hexo는 분명히 추천드리고 싶은 정적 사이트 생성기입니다.

Gatsby

페이스북에서 React를 발표하고 프론트엔드 개발에 커다란 파장일 일어났었죠?

Gatsby는 이러한 흐름을 타고 등장한 React 기반 정적 사이트 생성기입니다. Gatsby는 React 뿐만 아니라 페이스북에서 발표한 또 다른 차세대 기술인 GraphQL을 근간으로 설계되었는데요.

Gatsby의 가장 큰 장점이라고 하면 컨텐츠를 아무데나 심지어 여러군데 저장해놓더라도 쉽게 끌어와 블로그 사이트로 변환할 수 있다는 것인데요. 즉, 컨텐츠를 파일 시스템에 저장해놓았든지, 데이터베이스 서버에 저장해놓았든지, 클라우드 서비스에 저장해놓았든지, 아니면 외부 CMS에 저장해놓았든지, Gatsby를 사용하면 GraphQL이라는 일관된 API를 통해 조회가 가능해집니다.

이러한 유연함과 React 때문에 현재 저는 제 블로그를 만드는데 Gatsby를 1년 넘게 사용하고 있습니다.

Gatsby가 요즘 굉장히 핫(hot)하기 하지만, React와 GraphQL을 잘 모르신다면 공부할 게 상당히 많기 때문에 재고를 해보셔야 합니다.

기타 정적 사이트 생성기

요즘에는 정적 사이트 생성기 전성 시대라고 할 정도로 프로그래밍 언어나 라이브러리 별로 새로운 도구가 속속들이 등장하고 있습니다.

예를 들어, Go 언어로 작성된 Hugo라는 정적 사이트 생성기는 넘사벽의 사이트 생성 속도를 자랑하고 있고요. VuePress는 Vue.js 기반의 대표적인 정적 사이트 생성기입니다.

최근에 나타나고 있는 흥미로운 경향은 대형 자바스크립트 프레임워크들이 정적 사이트 생성을 하나의 기능으로 지원하기 시작했다는 것입니다. 대표적으로 React 진영의 Next.js, Vue.js 진영의 Nuxt, Svelte 진영의 SvelteKit를 들 수가 있는데요.

그래서 저도 올해 하반기 쯤에는 SvelteKit로 야삼차게 한번 갈아타볼까 생각하고 있는 중이랍니다. 😁

시장에 어떤 정정 사이트 생성기가 나와있는지 볼 수 있는 유용한 사이트도 있으니 참고하시면 좋을 것 같습니다.

마치면서

빠르게 변하는 웹 개발의 트랜드 속에서 블로그를 만드는 방법도 그에 맞춰 변하고 있는 것 같습니다. 정적 사이트 생성기를 선택할 때는 무엇보다 본인이 어떤 기술에 친숙한지가 가장 중요할 것입니다. 새해 블로그를 시작하시는데 본 포스팅이 작은 도움이 되길 바라며…

새해 복 많이 받으세요!