이 포스팅에서는 GitHub Page를 통해 손쉽게 개발 블로그를 Hosting 해보고 Command Line 명령을 통해 쉽게 블로그를 만들 수 있는 Hexo 프레임워크를 소개하고자 합니다.
- GitHub Page - https://pages.github.com/
- Hexo - https://hexo.io/
지금 보고 계시는 블로그 역시 동일한 방법으로 30분 이내에 블로그를 개설 할 수 있었습니다. Git Page와 Hexo를 통해 개인의 기술 관련 문서를 손쉽게 관리하고 알릴 수 있기를 바랍니다.
Git Page로 정적 페이지 Hosting하기
Git Page를 통해 손쉽게 USERNAME.github.io 도메인을 통해 정적 페이지를 호스팅(Hosting) 할 수가 있습니다.
Github Repository 생성하기
먼저 Github에 가입한 후에 아래와 같은 순서로 Repository를 생성합니다.
- New Repository, Repository 이름은 USERNAME.github.io
- USERNAME 은 Github의 가입시에 사용자의 username을 입력한다
- Public / Private 중 Public 선택
- Create Repository 버튼을 통해 Repository 생성
Clone the repository
Github Repository 생성 이후에는 아래의 Command Line을 순차적으로 실행한다. 먼저 생성한 Repository를 로컬에 복사한다
$ git clone https://github.com/username/username.github.io |
Terminal 환경이 익숙하지 않다면 아래의 링크에서 Windows, Mac 운영체제별 클라이언트 프로그램을 통한 Step을 소개하고 있다.
https://pages.github.com/
Hello World
root 디렉토리에 index.html 파일을 생성
$ cd username.github.io |
Push it
Remote 저장소에 변경내역을 Push 한다
$ git add --all |
It’s done!
아주 손쉽게 여러분의 웹페이지를 하나 만들었다. 이제는 브라우저에서 정상적으로 https://USERNAME.github.io 에 접속되는지 확인 한다.
Hexo
Hexo는 Jekyll와 함께 대표적으로 정적 페이지를 쉽게 만들 수 있도록 도와주는 서비스이다. 두 서비스 역시 블로그 지향적인 서비스이며 Hexo의 경우에는 npm을 통해 쉽게 설치가 가능하고 한 줄의 Command Line을 통해 Github에 바로 배포 할 수 있으며, Jekyll과 마찬가지로 다양한 플러그인과 테마를 지원하고 있다
A fast, simple & powerful blog framework
설치 전 준비
Hexo를 이용하기 위해서는 먼저 아래의 구성 요소들이 사전에 설치가 되어 있어야 한다. 이미 설치가 되어 있다면 생략해도 좋다.
Hexo CLI 설치 및 블로그 생성
$ npm install hexo-cli -g |
설정파일 업데이트
Command Line을 통해 Hexo를 설치하고 블로그 생성이 완료가 되면 root 디렉토리에 _config.yml
이라는 설정파일이 생성이 되는데 이 곳에 블로그에 대한 대부분의 설정을 할 수 있다. 이 중 중요한 설정 요소들을 소개하도록 하겠다. 나머지 설정 값에 대한 자세한 정보는 Hexo의 Document를 통해 확인이 가능하다.
- Documentation - https://hexo.io/docs/
Site 정보
블로그의 이름과 간략한 소개등을 수정 할 수 있다
title: 안녕 프로그래밍 |
URL 정보
블로그 URL정보를 설정 할 수 있다
url: https://USERNAME.github.io |
만약 본인의 Custom Domain을 적용하고 싶다면 url값은 이후에 Custom Domain 설정시 CNAME 파일을 생성 할 때도 참조한다.
Github 정보
자신의 Git Page의 Repository 정보를 입력하면 이후에 손쉽게 배포가 가능하다.
# Deployment |
로컬에서 테스트
기본적인 설정이 완료가 되면 아래의 Command Line을 통해 로컬에서 서버를 구동 할 수 있다.
$ hexo server |
서버가 구동이 되면 아래의 주소를 통해 브라우저에서 블로그에 접속 할 수 있다.
Github에 배포하기
로컬에서 정상적으로 블로그에 접속이 되었다면 이미 생성한 Github Page Repository에 손쉽게 배포가 가능하다.
Hexo 설정을 통해 정적 리소스 생성하기
$ hexo generate |
배포하기
$ hexo deploy |
아래와 같이 Generate와 Deploy를 동시에 실행 할 수도 있다
$ hexo deploy --generate |
배포가 완료가 되면 브라우저에서 USERNAME.github.io로 접속해 정상적으로 배포가 되었는지 확인한다.
주의사항
간혹 hexo의 deploy기능을 통해 정상적으로 배포가 되었음에도 불구하고 페이지가 업데이트 되지 않는 현상이 있는데, 이 경우에는 아래와 같이 페이지를 clean후에 배포를 하면 해결된다.
$ hexo clean |
테마 적용하기
USERNAME.github.io를 통해 성공적으로 블로그 접속이 되었다면, 멋진 디자인을 적용한 테마(Theme)를 적용하고 싶을 것이다. Hexo에서는 아래의 페이지에서 다양한 Theme가 적용된 페이지를 소개하고 있다.
대부분의 Theme 페이지에서는 Github 링크가 포함되어 있는데 Theme를 적용하기 위한 자세한 설명을 포함하고 있다. 안녕 프로그래밍은 자체 제작한 hexo-theme-chiangmai 라는 Theme를 사용하고 있다.
Theme를 적용하기 위해서는 hexo-theme-chiangmai Github 페이지에서 자세한 내용을 확인 할 수 있다. 주의사항으로는 Theme를 적용하기 위해서는 아래와 같이 Repository 상태를 clean한 이후에 재배포 해야만 한다.
$ hexo clean |
포스트 작성하기
멋진 디자인의 Theme까지 적용하였다면 이제는 앞으로 블로그의 주인공이 될 기술 문서를 작성 할 일만 남았다. 아래의 Command Line을 입력하면, root 디렉토리의 source/_posts
폴더에 Markdown 파일이 하나 생성되는데 Hexo에서는 Markdown
문서를 통해 포스트를 작성해 나가면 된다.
새 포스트 만들기
$ hexo new post [post_name] |
예제
$ hexo new post github-page-and-hexo |
아래와 같은 경로에 Markdown 문서가 생성 된다
ㄴ source |
github-page-and-hexo.md 에서 아래와 같이 포스트의 제목을 수정 할 수 있다
--- |
Github Markdown Guide
Markdown 문서가 생소하다면 아래의 링크를 확인하자
체크리스트
지금까지 GitHub Page와 Hexo를 통해서 블로그를 개설하는 과정을 살펴보았는데요, 이 과정에서 소소한 시행 착오를 겪었습니다. 만약 저와 같은 동일한 이슈가 재현이 됐을 때의 해결 방법을 안내하는 것을 마지막으로 이 글을 마치도록 할께요.
Theme를 변경하고 배포시에 적용이 되지 않는 이슈
이 경우에는 Hexo를 clean
하고 재배포를 합니다.
$ hexo clean |
배포시에 아래와 같은 에러메세지와 함께 배포가 되지 않는 이슈
ERROR Deployer not found: git |
hexo-deployer-git
플러그인 설치
npm install hexo-deployer-git --save |
_config.yml
에 플러그인 설정
plugins: |