Zola로 블로그 만들기 초보자 가이드

Rust 1도 몰라도 상관 없는 Zola로 블로그 만드는 방법입니다.

블로그 메인

지금 보고 있는 블로그 역시 Zola로 만들었으며, 충분히 만족하고 있어요.

대략적인 프로젝트 구성만 익히면 어떤 테마를 사용하든지 쉽게 만들 수 있고, 원하는 대로 커스텀도 가능하니 한 번 둘러보셔도 좋을 것 같아요.

Zola 설치

그럼 시작해볼게요.

일단 Zola를 설치해주어야겠죠?

Zola는 하나의 바이너리 파일로 이루어져 있는데요. 이 때문에 각 OS의 패키지 관리자를 이용해서 설치할 수 있습니다.

여기서는, 윈도우와 MacOS 사용자들을 위한 내용만 다루겠습니다.

더 많은 설치 방법은 Installation - Zola 페이지를 참고하세요.

Windows

왼도우 사용자는 Scoop이나 Chocolatey 패키지 관리자를 이용해 설치할 수 있습니다.

Scoop 을 사용한다면,

$ scoop install zola

Chocolatey 를 사용한다면,

$ choco install zola

각 코드를 입력해서 설치합니다.

현재 PowerShell ISE 를 통한 설치는 지원하지 않습니다.

macOS

MacOS 사용자는 우선, Homebrew를 통해 설치가 가능하고,

$ brew install zola

MacPorts를 이용한 설치도 가능합니다.

$ sudo port install zola

새 Zola 프로젝트 생성

Zola로 새 프로젝트를 생성하는 명령어예요.

$ zola init [블로그 이름]

명령어를 입력하면, sass 컴파일 여부, Atom 피드 생성 여부 등을 묻는 프롬프트가 나오는데요.

프로젝트 생성 후, TOML 파일로 간단하게 설정할 수 있으니 그냥 Enter 연타로 넘어가줍니다.

결과적으로, 아래와 같은 구성의 프로젝트가 생성된 것을 확인할 수 있어요.

├── config.toml
├── content
├── sass
├── static
├── templates
└── themes

여기서부터 내 블로그를 설정해도 되지만 생각보다 많은 시간이 필요할 수 있어요.

이 시간을 단축시키도록 우리는 테마를 함께 설치할 거예요!

테마 설치

테마에 대한 설명

Zola의 테마는 그 자체로도 하나의 Zola 프로젝트라고 할 수 있어요.

실제로, 각 테마는 sass,templates, i18n 등 동일한 구성으로 이루어져 있지요.

이 테마를 내 Zola 프로젝트 내 themes 폴더 안에 저장한 후, config.toml 파일에서 설정해주면 내 프로젝트에 적용이 됩니다.

원리는 간단해요.

Zola 프로젝트는 templates 폴더 내 .html 혹은 .md 파일이 페이지의 형식을 정하고, content 내의 .md 파일이 페이지의 내용을 구성해요.

그리고 templates 폴더에는 Zola 프로젝트에서 약속한 특정 이름의 .html 파일이 저장되어 있어야 해요. 따로 설정하지 않아도 Zola 엔진이 이름을 보고 알아서 이 파일들을 기반으로 페이지 형식으로 사용하는 거죠.

만약, 내 프로젝트에 이러한 파일들이 있다면 내 파일을 사용하지만, 없다면 설정한 테마 내 templates 폴더에서 해당 파일을 찾은 다음에, 이걸 가져다 쓴답니다.

다시 말하면, 테마를 커스텀하고 싶을 때는 내 프로젝트에 동일한 폴더 구조로 동일한 이름의 파일을 붙여넣은 후에, 원하는 만큼 추가, 변경, 삭제할 수도 있다는 말이기도 해요.

테마 다운로드

이제 테마를 다운로드하는 방법을 알아볼게요.

거의 모든 Zola 테마는 각각의 Github Repository (이하 리포) 에 저장되어 있어요.

그래서, 원래 있던 내 프로젝트에 clone하면 하나의 리포가 다른 리포 안에 속하는 상황이 만들어져요. 관리하기 까다로운 상황이 만들어지죠.

이를 방지하기 위한 Git의 기능 중 하나가 서브모듈인데요. 필요한 리포를 서브모듈로 다운받으면, 각각의 히스토리를 침범하지 않기 때문에 관리하기 용이하답니다.

Zola 테마 역시 서브모듈로 설치하도록 권장하고 있어요.

그 방법은 다음과 같아요.

우선, 내 Zola 프로젝트에서 Git을 활성화한 후,

git init

원하는 테마를 서브모듈로 다운받아요. 우리가 사용할 테마인 tabi를 다운받아볼게요.

 git submodule add https://github.com/welpo/tabi.git themes/tabi

과정이 완료되면 themese/tabi 폴더에 해당하는 디렉토리 및 파일이 다운로드되고, 내 프로젝트에는 .gitmodules라는 파일이 생성된 걸 확인할 수 있어요.

[submodule "themes/tabi"]
	path = themes/tabi
	url = https://github.com/welpo/tabi.git

이제 프로젝트를 실행해봅시다.

프로젝트 실행

Zola는 변경사항이 바로 적용되는 성능 좋은 개발 서버를 내장하고 있어요.

우리는 이 개발 서버로 우리의 작업물을 확인할 수 있고요.

다음 명령어를 입력해보세요.

zola serve

이제 콘솔에 출력된 로컬 주소를 웹브라우져로 실행하면, 우리가 선택한 테마가 입혀진 Zola 블로그를 확인할 수 있을 거에요.

만약, 에러 코드가 출력되면서 서버가 구동되지 않으면, 필요에 따라 테마에 있는 파일들을 몆가지 내 프로젝트로 옮겨야 할 수도 있어요.

각 테마마다 각 파일이 연결된 방식이 다르기 때문에 정답은 없어요. 다만, Zola의 에러 코드는 비교적 상냥한 편이니 출력된 대로만 수정해주면 됩니다!


여기까지 진행했다면, 테마 그대로의 블로그를 마주할 수 있을텐데요.

막상 사용하다보면 커스터마이징하고 싶은 부분이 하나둘씩 눈에 뗼 것입니다.

글이 길어져서 Netlify로 배포하는 부분은 다른 포스트로 정리해두었습니다.

다음 포스트에서는 tabi 테마를 사용하면서 제가 커스텀한 부분들을 하나씩 정리해보겠습니다!